FightSkillz.com - Life, Code, & Idiocy
It's really irritating when you're searching for OGG Vorbis support in the iOS 4 version of WebKit and a tech reporter's last name is Ogg. 2 days ago

Posts Tagged ‘Firefox’

The Future of Flash – Apple’s iPad

Wednesday, February 3rd, 2010

The internet is a buzz with talk of the downfall of Flash. Flash, the only web platform with 99%+ penetration rate cross platform, and 90%+ penetration rate for their latest version only 3 months after release. The platform that powers the web's content, games, and more than 75% of all interactive online media. That's now able to power desktop and mobile applications, and with the imminent release of Flash 10.1 will bring far more efficient and lower memory/ram usage. So much lighter on cpu in fact that it's able to play HD Youtube videos on mobile phones and netbooks without a problem. Yes, Flash, the downfall of Flash.

There are two main arguments to this. The first is the emergence of HTML 5. HTML 5 finally allows video and audio playback without any plugins, and canvas - a tag which allows for complex drawing, embedding fonts, etc. etc. Things Flash has been able to do for years, has a huge head start on, and does really well. Flash has supplied us with everything from video streaming to blackjack, and even website design as a whole, and yet HTML 5 is supposed to just oust the holder of the crown and sceptre when it's finalized? I don't think so. The problem nobody seems to get is that Internet Explorer still has a majority market share, by a lot depending on who you ask - and Microsoft will likely NEVER support standards because it directly counters their business model. Aside from that, and the fact that every browser that will support HTML 5(ie: everyone else), will implement it differently from each other, with different aesthetics, features, code, BUGS, etc. But even more crucial the HTML 5 spec itself is not even complete yet. It's not even finished, and it's unfinished in a deadlock between the web giants who not only can't decide or agree on which video and audio formats are the best performance wise, but also who owns the rights to implement those formats in their browser and who'll have to pay massive royalties should the true patent holders (still somewhat unknown for sure) decide to cash in. No one wants to properly look this up for a variety of reasons and so HTML 5 - supposed to bring the web together and herald a new dawn of the internet can only work if EVERYONE does in fact come together and implement it in exactly the same way; disregarding that ubiquitous HTML 5 means EVERYONE loses something, some everything.

The other main argument is the Apple iPad - just announced. Which like the iPhone doesn't support Flash. Apple uses the old "Flash is too resource intensive" argument to convince you that limiting you from the full web is a good thing. This simply isn't true. It's false. Both iPhone 3Gs and iPad could happily run the current version of Flash or Adobe AIR just like your laptop/desktop. And it's also entirely up to the developer and how they program and how resource intensive they make their flash app/widget/game/etc. The only reason, listen up, the ONLY reason Apple does not support Flash, is because the Flash platform already powers so many games and useful tools and full blown applications on the internet it threatens Apple's very business model of the Itunes/App Store. Apple wants companies to develop all their apps again specifically for the iPlatform and invest in it. If you could make a Flash app that ran on the iPhone it would also run on Android and every other smart phone. But if you invest in the iPlatform your app will only run on the iPlatform. If Apple was a monopoly the FTC would be pushing them down for their anti-competitive vindictive behaviour.

Apple doesn't block Flash support in their mobile products because they want to push innovation in HTML 5. If HTML 5 was advanced enough, or popular enough to be worth creating the caliber of applications possible on Flash, Apple would immediately configure mobile Safari to block, impede, and hinder the advancement of standards just like Microsoft with IE. In a heart beat. Apple promotes HTML 5 because they know it'll be years before it's anywhere close to where Flash is today, if ever. In fact Apple is one of the "powers that be" preventing the HTML 5 spec from being finalized in the codec wars. Apple wants you locked into their platform. Apple doesn't care about advancing the web, or a better user experience, they care about the big media companies bringing their content online through Apple's platform. Apple wants the iPad to replace your tv, radio, and other media consumption devices. They do not care about the open web.

Adobe on the other hand continues to open up the Flash platform and benefits from creating a ubiquitous platform across desktop and mobile. There are fully open source versions of their Streaming and Application servers, and free and open source ways to develop for their platform. Anyone can build a Flash application, for the browser, desktop, Windows, Mac, Linux, Safari, Internet Explorer, Chrome, Firefox, Opera, etc. etc. Build one application and deploy everywhere using an incredibly powerful, scalable, and mature toolset. Apple on the other hand - should you decide to invest in it, puts you in a position where you may or may not after months of development time and costs even get your application onto a device, regardless you'll have payed Apple to be a developer and to submit it in the first place or even get access to their development tools, and should you get through the random and gauntlet of barriers they can still remove your software from their platform and devices at a moments whim. They can and do literally remove your application from people's phones after being downloaded and used without warning to backup the data put into or created by your app. Anytime for any reason. AND if you're lucky enough to get your application through all these extra months of hurdles and costs and lost revenue you're only gaining access to one small subset of mobile devices.

It is absolutely ridiculous to think the HTML 5 is going anywhere anytime soon, let alone even coming close to eclipsing Flash in any way. Not from Apple, they don't want anything to compete with their platform for getting applications on their devices - Flash or otherwise(HTML, Java, Silverlight), and not from anywhere else because it's just not mature, complete, or will over the next 12-24 months be implemented uniformly or consistently across browsers or operating systems. Even in the event that somehow all these competitors come together to reduce their own profit margins and upset shareholders in the name of benefiting the user and happy popcorn rainbows, it will still only have the capabilities of Flash 8-ish. By then Flash Player 11 will be out and all the best web apps will have an Adobe AIR application front end and you'll use an Adobe AIR application to browse through a market place of Adobe AIR apps. Yes we're moving towards the cloud, and yes the cloud and desktop are becoming indistinguishable, but moving into the browser is only a temporary measure for some companies before they build a desktop front end for their service.

The iPad, iPhone, and iPod are toasters. Every person with an iMobile device also has a desktop or laptop for work and actually managing their digital life. Every single person I've seen raving for HTML 5 and the downfall of Flash depends heavily on Flash and its phenomenal capabilities. They're all idiots.

Why Web Standards?

Tuesday, June 24th, 2008

When it comes to the web there are a hundred different ways to accomplish any one thing. The key disciplines in internet programming are structure, style, client-side logic, server-side logic, and storage. There are plenty of languages out there to satisfy each discipline, but they can become obsolete/unused and as the nature of the technologies running the code change, the languages themselves must adapt and change.

New innovations and concepts start to pile up as they are discovered in a given language and each developer having to hand code themselves a suite of special functions and method's to take advantage is a massive waste of resources--enter the framework. Frameworks are an incredibly important time saving tool for web developers. Aside from exploiting a given language from every possible angle and putting all that power into the hands of the developer. They make it easy for us to write neater more efficient code, often in more legible and fluent syntax than the original language offered. Frameworks allow the developer to bypass issues like those caused by cross-browser rendering engines, security, and high level language exploits as the necessary work-arounds and hacks are built into the framework. Frameworks are developed by communities, individuals, organizations, and private companies. The luxury of having a team of people working the kinks out of a language and the way it's interpreted is a great one, but it comes at a price. Each framework is developed at a different pace, in a different order, often with a different purpose in mind.

So what is the best approach to web development? What is the most effective suite of languages and practices? In the democracy of the web it's important to understand that any given approach is only as good as the support it gets; from the creators, developers, and end users. These are the main factors: which languages, frameworks, and practices are supported and innovated upon by it's creators the most; to the finest degree, which are contributed to and used and documented by the most developers, and which are the most amount of end users capable of viewing. Most end users don't have the experience to question the browser or plugins with which they view the web. They don't care or think about how they get to a virtual destination, they just want to get there and they want everything to work when they do.

Due to the politics and business deals of the major players the long standing state of the web has been one of division. End users stuck with browsers that came with their computers, and those who went in search of more functionality (bookmarks, tabs, etc.), or neglect to update, creates a situation where everyone's using different browsers and versions with different interpreters for the code on any given web site. A system where one line of code can be interpreted in 10 different ways depending on the end users who don't have the know-how or control to deal with it, is an immature one.

Even in the early growth of the internet these problems were apparent and so the Web Standards movement was born. An increasing amount of web communities, organizations, developers, and private companies are adopting web standards, even the biggest violator of these standards Internet Explorer--infamous for deliberately misinterpreting standards based code in favour of it's own proprietary code, is in development to finally be standards complient. Microsoft claims IE 8 is finally going to adopt many, if not all web standards, but is still in the beginning stages of development, even when they do everyone who uses IE6 and IE7 will not upgrade and so for a very long time it will likely be yet another cross-browser concern. It's important to note that even between the current standards compliant browsers, there is still some wiggle room of how they interpret the standards, some of which can affect user experience and site functionality to a relatively large degree.

Until web standards are refined to a point where one line of code has one universal interpretation and the democracy of the web is ruled by those standards and viewed by standards compliant browsers we are stuck having to hack away at code to make our sites and applications usable by as many people as possible. I believe to move towards a culture where our beliefs and values are reality and commonplace, we each have to practice those beliefs and values, regardless of whether they are accepted by our current culture, the norm, or the majority. So anyone reading this visit [http://w3c.org], get a standards compliant browser, I love Firefox 3 [http://firefox.com], and write standards compliant code.