Click to Flash is the ideal middle ground for mobile devices. Only load the Flash when the user explicitly requests. 90% of the time, the user won't notice the Flash missing, the other 10% it is available on request. That solves the issues of 1) Flash in the background draining the battery or exploiting security holes and 2) the annoying advertisements.
It's great to have Flash there when you need it. So many sites still have integral Flash content.
That doesn't address the user experience when interacting with the apps written for desktop computers on a tablet, which was one of the core complaints.
The truth is that interacting with applications written for a different platform sucks. It sucks especially for Flash because Flash was generally used to build interactive applications that HTML/JavaScript couldn't. However, it isn't confined to Flash. I've had HTML5 apps that expected mouse/keyboard usage that couldn't be replicated on a tablet and they sucked, too.
This will be bad for device manufacturers though. Many users will think "iPad with Flash still can't use lots of Flash" when many Flash sites depend on things such as mouseovers and other events that don't make sense on a touchscreen UI. We would know it's the site's fault, but it'll give iPad/Android/etc. a bad image.
I agree (and I have no idea why you're being downvoted). I don't always need Flash on my phone, but in the situations where I do I'm really grateful to have it. And click-to-flash is the ideal way of handling this.
Meta: He's being downvoted because people disagree with him, which is wrong. Downvoting should only be used for posts that don't contribute to the conversation. This is a valid discussion, even if you disagree with the assertion.
On to the actual point of the discussion. I disagree that click-to-flash is an "ideal" way of handling this. Is it pragmatic? Yes. Is it ideal? No way.
Click-to-flash is a kludge; plain and simple. This isn't Flash's fault though. It's laziness on the part of content producers. Maybe laziness is a bit unfair, but it stems from a desire to "build once, run anywhere". The internet graveyard has more than one resident whose stated goal was exactly that. The desire to "build once" is a cost concern. It's not cheap to build content for every platform in existence. Content producers aren't interested in platforms, they're interested in audiences. Relevant questions for content producers are:
* How many eyes are there on a given platform?
* What revenue can I expect to generate from those eyes?
If a content producer can move in to a new market (platform) at zero cost, they'll always take that deal. That's the deal that Flash promises. The trouble is, that's a false promise.
There's a terrible epidemic of myopia plaguing the industry. If you went to an "old school" media person and told them you wanted to take the content from a tri-fold brochure, scale it down, and mail it on a post card, they'd laugh you out of the room. Then they'd lecture you about how your message must fit the medium if you expect it to generate results. Sound familiar?
You can't simply cram Flash applications designed for a desktop on to a tablet and expect the transition to go well. Designing for a tablet is a change in medium that requires consideration from the outset. Anything less is a sub-par experience.
1. Most existing Flash content is designed for the keyboard and mouse. Even if they were written using JS/CSS etc the same user interface issues would exist. In other words the problems are with the initial UI design. Flash really should not be blamed here! The current versions of the Flash developer tools support multi-touch.
2. I disagree about the deal. Flash offers the ability to have content appear the same across different platforms with the same form factor. E.g. the same on a 10" android tablet or a 10" windows tablet. Given the platform battle currently taking place spreading your risk by not developing purely for one platform (E.g. webOS) makes a lot of sense.
3. Unless developers have really deep pockets, the choice often boils down to - select a multi-platform development environment and accept some technical compromises but spread your financial risk OR make a calculated gamble and develop purely for one platform and hopefully get an optimised user experience.
I disagree that click-to-flash is an "ideal" way of handling this.
Personally, I wish I had click-to-flash on my desktop. Flash is so often used for intrusive ends, I'd rather it be sandboxed from the real web content. Of course, these days, HTML can be used for similar intrusive content, but it rarely is, so far.
I've used flash on 2 Android devices. My experiences so far:
* On my Nexus One: Yes, flash is to slow to be worthwhile, and input tends to be awkward on the small screen anyway. Uninstalled.
* On a Xoom (running 3.1): I just downloaded flash last week to watch a couple episodes of Legend of Neil while I was at lunch. Playback was great, about what I would expect if I were using a small screen netbook or something like that. I was quite glad I had the option to use flash. My browser is set to only load plugins on "click", so I get the best of both worlds really (not sure if that was the default or not). Flash only loads when I want it to, but it's there if I do want it.
He even acknowledges in the report that he hasn't tried Android 3.1, in which the main claim to fame is that Flash doesn't suck.
If you're going to write an inflammatory article, can you at least test against the latest version, especially when the main improvement in the latest version is on the thing you're testing?
3.1 isn't out for the Asus Eee Pad Transformer yet (which I have). The article might be inflammatory but only states fact.
The flash experience on the Eee is dire. Watching iPlayer is an exercise in frustration with choppyness and even sound/video syncing issues occasionally. That "not optimized for mobile" message that we see now and again might as well say "this will be very sluggish and likely make you want to pull your hair out". Running HD videos natively is no sweat for the it, on the other hand.
Surely the article ought to simply be one word: "yes". Apple made its decision in 2007. If and when flash really stops sucking (performance, UX, and security wise) and users demand it, perhaps Apple will reconsider. Since the likelihood of two of these three things is almost zero...
In the past month or so, I've had friends with iPhones ask me several times to look something up because the website they were checking (restaurant sitesin a couple of case, and a local band site in another) used a Flash menu or splash screen. It's obviously idiotic for the website designer to do such a thing, but it's extremely common. I gloat a little every time an iPhone user has to ask me to do something on my Android phone.
I gloat a little every time an iPhone user has to ask me to do something on my Android phone.
I understand that position, but to me, it isn't much different than having to bust out IE7 at work to run some stupid legacy bullshit from HR because it won't run in anything good. ;)
Any business (especially one like a restaurant or a night club, where mobile users are particularly relevant) that relies on Flash in this tech climate is run by morons.
You believe restaurant owners are calling up web developers, and saying, "Hey, we need a new website. Make it with Flash."? And that the web developers are trying to convince them otherwise? No. The responsible party for the abomination that is Flash websites lies mostly with web developers. I've even met a few of them over the years. They use Flash because it is easy/cheap/fast to produce flashy (pun incidental) websites. Some of them also like it because it means the client has to call them for updates to the website, even trivial ones.
Restaurant owners are victims of Flash websites, just like end users are. They just don't know enough to know it.
I hate Flash as much as anyone, and I'm glad Jobs refused to put it in the iPhone, whatever his reasons, because it means Flash is losing its stranglehold on some kinds of site faster than it otherwise would have. But, in the meantime, my phone can visit those sites, while iPhones can't.
In my experience no. Clients know what Flash is and they will specifically ask around for a 'web designer' who 'does Flash'.
Heck. I've even got a client who tells me to put some jQuery on the site to jazz it up a bit! He didn't seem too impressed when I billed him for optimizing my array access code using jQuery.each()...
Also, many many many billable hours converting trivial flash sites to javascript/svg/css3.
Not exactly mindblowing stuff but it allowed me to pay my rent in a nigh-on automated fashion for a while straight out of uni. Made the adjustment from student life into the workforce a little less abrupt. Thanks Steve!
I've honestly never thought about asking somebody else in that situation. If a company doesn't want to market to me (which is what their website is doing), that's fine, but I likely won't patronize them. Too many options are available for me as a consumer to waste time working around a business' short-comings.
It was where the group had decided they wanted to go, and nobody knew how late they were open. Calling is another option and getting the phone number of a place is usually easy, even if their own website doesn't work. But, when you're sitting around in a noisy bar the web browser is a better choice.
If you rule out all restaurants that use Flash on their website, you're going to rule out a huge number of restaurants. For whatever reason, locally owned restaurants seem to use Flash something like 80% of the time (and the usually also use PDF for their menus, multiplying their level of fail).
1) There's nothing wrong with .pdf for restaurant menus. .PDF works fine on all platforms worth mentioning, and the files don't even have to be all that large if encoded properly. 2) Wait a year and I'll bet 90% of those restaurants will no longer require Flash. As someone said above, they'd have to be idiots, and they're not, for the most part.
Not to mention that you don't have to install it if you don't want it. I like having the option there for me to make, not have someone there to make it for me.
I can't speak to tablets, but its great to have on my phone. I'll routinely pull up things like espn3 when wanting to watch a game when I'm not at home. For that, it works wonders.
Same for me with Lexulous on Facebook, and some Web sites.
If I load up a restaurant web site, chances are it'll be at least partly in Flash. Flash may not be perfect on my HTC Desire Z, but it gets the job done and I appreciate that.
I have been using a galaxy tab 10.1 for the last two weeks, and flash was one of the first apps I installed. As the founder of a hybrid html/flash site, I have been sorely missing the opportunity to demo my work on a tablet - but I was elated by the performance of flash on my tablet. What Jobs said is partially true - I use flash exclusively for video. Fortunatly, the user interface is html/js - so 'porting' to the tablet is a matter of adding a few event listeners that respond to 'press in addition to 'click.
I find the all-or-nothing articles about Flash to be tiresome. No, flash is not as good on phones as native apps. No, you can't load up a flash video or game and know with certainty that it will work well. But yes, you can watch most videos you find floating around with reasonable framerate, and yes there are sites which have games that work pretty good (Kongregate is one). I used to watch Conan on my Nexus One in bed all the time and it worked fine. That not cutting edge hardware.
Do we have to say something is "worthless". Is the line between worthy and worthless so razor thin? Why can't we just say something is merely ok, or it's hit or miss?
If Flash doesn't work on the web then people won't use it.
But it's my _choice_ whether to use Flash or not, and to decide whether it's useless, a bit useful, or absolutely vital. It's not for someone else to make that choice for me.
I do not use flash on my Atrix. It is slow, and it sucks to use. The only legitimate reason to use it is to have access to video streams that are not YouTube. However, last I checked, streaming video in a supported codec to a mobile device was a solved problem. Maybe some sort of a standard would emerge that would allow video hosting sites to not have to use Flash. I feel that it should have the number 5 in it somewhere. Maybe starts with HTML... </sarcasm>
I have Flash support on one of the fastest phones in the US. Watching Hulu is so painful that it is useless. I don't care if Adobe wants to give me the choice. However, I wish more sites would learn to not rely on it.
The problem is that encoding in multiple codecs is prohibitively expensive, and it's an ongoing cost that businesses smaller than Youtube don't want to pay. Therefore the most cost effective solution is to use Flash since you can't deliver high quality video in a single codec to all PC users without it.
You lose iPad, but at least the codec you're using allows you to deliver HTML5 video there fairly easily. The point is your stuck with Flash unless you want to incur a cost per video of encoding multiple codecs, and in many cases this can't even be automated effectively without a human being involved.
WebM would not help you at all if you only want one codec, unless youre comfortable losing every iDevice immediately. If you want one codec, it's H.264. Native support on iOS and Android devices, and you can support Chrome via Flash (which is seriously making me think about switching back to FireFox).
Ok, now suppose that you'd like to spend developer resources customizing your video player. If you do this in Flash you support the entire modern PC universe, and can fall back to HTML5 for iPad kind of as an afterthought ("mobile version").
If you spend your resources trying to customize an HTML5 player, you leave a large percentage of PC users out, either those using IE, Safari, and users without cutting edge browser versions (if you want to be a pioneer of WebM), or Chrome and Firefox (if you use H.264).
It's a solved problem only when everyone supports one high quality codec, and with Apple and Google both major players in the browser space this will never happen. So Adobe and Flash occupy a sort of stable island in the middle of a massive tug of war.
I know Apple was hoping that not supporting Flash would make everyone provide alternate avenues to their content but I don't really see it. Just "you need Flash to view this" and I wish I had even a somewhat buggy Flash version over nothing.
My experience has been the opposite (though I don't for a second doubt yours): I've been surprised by a) how few things I missed having Flash for when I first started not having it and b) how many fewer things I miss it for in 2011 than when I first started not having it - it used to be that I felt like I couldn't watch video on the web on my iPhone... now when I hit a site that doesn't have HTML5 video I'm surprised (and think poorly of the site rather than of my device).
I don't think iOS shows the missing plugin box like it used to. It seems that now it just shows an empty box, which makes it look like you're seeing everything. Can someone confirm that they changed this on a software version at some point? It's my experience on the iPad. When I first got it I would run into 4 or 5 sites a day where I couldn't watch the video. I don't experience it as much now because I've trained myself not to follow links to videos at all unless it's YouTube.
The transition away from Flash is slow indeed. It's legacy... But it's happening. Even my non-technical friends seem to hate flash, and I don't know anyone that'd use it for a new site.
For my two phones (HTC Hero, HTC Desire) it's always been rubbish: not touchy, seconds-per-frame, not fullscreen, frequent massive updates. I've now uninstalled it as of two months ago.
I still find Flash useful on my Atrix for watching video-on-demand services, but its ability to use a touch-centric interface is atrocious. Not horribly upset that it isn't on my iPad.
The multi-touch APIs are relatively new in Flash Player. Hopefully that will improve as developers work against those as well as the mouse-centric APIs that have been used traditionally.
No, hopefully it will just go away. Flash should be considered legacy at this point, we shouldn't be developing new dependencies when we're finally getting movement on the HTML standard.
Do you really think the various browser vendors are going to implement the new HTML5 features identically? Its already a mess. The real advantage of HTML5 is that it will allow vendor lock-in to take place.
I'm not a tech zealot, one way or the other, but Flash is going to be here for awhile regardless of your hopes. In the meantime I'd expect improvements in its overall usability on touch based hardware.
Totally disagree, I've used both the iPad and a Honeycomb tablet. I was able to watch so much more content with the Android tablet, stuff from blip.tv, custom players, even custom streaming video players. It's not as good as the desktop version, but it's a lot better than the Flash player on Boxee and others.
There may certainly be issues with Flash on Android, but it's not useless on all tablets.
Flash works great on the Blackberry Playbook. When other developers ask me about the device, at some point I typically end up demoing Amazon streaming video. Most are quite surprised by how well it works.
=>"A few minutes later I suggested that my co-worker buy his mom a netbook."
Since it was for a mom, it had to be Windows but if it's not windows, I would seriously want to defer the idea of buying even a netbook. It's not just the mobile devices and OS. It extends even further. Adobe could probably give genuine reasons for bad flash on Apple devices (they say Apple did not co-operate enough) but what stops them from making it better on Linux. There is no bigger pain than running flash on ubuntu. I run ubuntu 11.04 and my laptop turns off itself within 2 hours of running flash.
Flash sucking on tablets, phones, or even netbooks (at least ARM based), isn't entirely Adobe's fault. The SoC manufacturers are tasked to get Flash working on their chipsets. That means nVidia, Freescale, TI, Samsung, Apple. Adobe's NDA for working on Flash is... well, restrictive. I'd bet that anyone who has signed it isn't going to be one of the companies top programmers, due to the nature of some of the restrictions in it.
It's not really useless. The sweet spot is to disable browser plugins in the Android browser by default. And then only enable the Flash elements you specifically want. It works well for Hulu and whatnot.
Now, if the Android browser didn't let me disable everything by default, I would run screaming.
But with the scheme it has, it satisfies both camps, the people who don't want the encumbrance of Flash, and those who do.
I can't say anything to tablets with flash just yet, but it works fantastically on my G2. Every site I've ever tried works perfectly, and quickly, even with the g2 having a previous gen CPU (single core). I can't imagine why it would not work on a tablet as well as it does on my phone.
I read the article, and it's kind of annoying that the OP makes this judgement based off of facebook games. It doesn't sound like he made much effort at all. It sounds more like that he's trying to reinforce or convince himself that the lack of flash on ipad isn't a shortcoming. I guess this goes well with the Apple religion articles I've seen lately.
The title is a strawman. I don't think it's particularly controversial to say that flash sucks, and Apple is technically justified in not supporting it on their devices.
But that's not what the issue was. The real controversy was Apple's decision (via a revision of its developer agreement) to ban the Adobe flash-to-iOS translator. That is a huge problem, and I don't see how "Flash sucks on android, see?" has any bearing on it.
That may be the controversy you are concerned about, but for many, the key controversy has been Flash in the browser using a plug-in. Some concrete examples:
So talking about the Flash plug-in isn't a straw-man or a made-up controversy, it has been a real point of debate.
Note also that the terms of the developer agreement changed in a way that apparently allows the Flash cross-compiler, so the controversy you are concerned about has now been resolved:
I'm quite fine with no Flash on iOS, too. I never use it on Android - Jobs is right when he says the interfaces for Flash apps don't work well on touch screens, and I can't think of any sites where it's required. I guess it's nice to know it's there on Android if I need it, but I never miss Flash when browsing on my iPod.
Gah,I love my iPad but I am constantly annoyed by the lack of flash. There are more and more videos embedded in web pages and it is only getting worse. Something has to give and I think I will sooner move awaymfrom the iPad than the rest of the world will stop using flash for video.
On a related note, has anyone been able to compare the performance of apps built using the Adobe exporters (iOS and AIR for Android) vs. apps developed in the native languages (Objective C and Android SDK)?
It's great to have Flash there when you need it. So many sites still have integral Flash content.