Silverlight, WPF, HTML 5, Metro and err…Flash…

20 09 2011

There is a lot of talk about these technologies, especially
after the Windows 8 BUILD preview. For many, Silverlight and WPF appear to be
dead, simply because it isn’t supported in the Metro world of Windows 8…This
technically is and isn’t true, depends what you think is in a name…

Windows 8 Metro

Looking for Files from any application in the Metro world, 1 single user experience

WPF and Silverlight

Both of these are essentially built on .NET libraries, which
in the desktop mode are still there, just as they are in Windows 7. However, in
the Metro world, these libraries have made their way into the WinRT library
collection, with this in mind and the fact that Metro runs XAML, you see that,
well the names may have changed, but Silverlight and WPF does run in Metro.

To “Metro” your application you do have to make some
changes, and these are very small indeed, we are talking a few changes to
include libraries and that’s about it. These changes though appear to be mainly
focused on touch enabling your application fully in the Metro world.

So if you wrote WPF applications and or Silverlight apps
that run OOB (out of browser), then things are pretty much business as normal. However,
if you wrote RIAs in Silverlight and had them running in the browser, then you
won’t be too happy. You see IE10 in the Metro world will not support plugins,
and that’s probably all down to touch and touch based libraries. If you want to
run Silverlight in a browser, then you need to be in desktop mode and use IE10…Not
perfect, but makes sense…

We also have to remember what we want to have as our
experience on the machine. You see, Silverlight in browser mode, and even
Flash, does deliver “Applications”, but the user experience can be very
different between apps. In the Metro world, Metro isn’t just about making your
apps run on that part of the OS, but is also about a seamless experience, look
and feel between all applications. It is also about integrating these
applications with the OS and other installed applications. What does that mean?
Well you cant have a Flash or Silverlight app running in Metro that then doesn’t
behave as other apps do, or more importantly how a user expects them too. In
the Metro world we can “Search” inside apps, we can seamlessly share content
and data between apps that never knew anything about each other. If we allow a
Silverlight app from a browser to run, then it won’t support this level of
experience, and more often than not, it won’t look and feel like a “Metro” app.
That consistent look and feel is what users want, expect and Microsoft has to
enforce…

Charms and searching within Apps

All apps should behave the same, deliver that same look and feel and support functions such as "Search" and "Share" in the same way. A single user experience

Apps

Apps are essentially the future for the desktop and the web,
Microsoft understands this, just as well as Apple does. You see the web was
never designed to deliver us “Applications”, rather it was designed and
architected to distribute and deliver content. This is primarily why we have
plug-ins for browsers, as even HTML 5 has limitations on what you can and can’t
do. Throw into the mix the horrible issues that arise with browser
compatibility and you see why Apps are far better for the user and for the OS.

Just as we have with mobile phones (and Apples iPad for
example), we will have an app store, which allows us to purchase (or get for
free) applications, for Windows 8, these will be XAML (WPF / Silverlight apps)
or HTML 5 with Javascript (though I believe and suspect XAML will be the
technology of choice).  In this way, Apps
will behave in similar fashions, so it makes it easy for any user to add more
apps to their machine and use them quickly and efficiently. This isn’t the case
with browser plugins nor with typical “chrome” based applications.

Death of Flash?

Well not really, but I do fear this signals the beginning of
the end for Flash. Essentially if you develop in Flash, I would be jumping ship
fast! I also have a chuckle when I think of apps such as Tweet Deck, which essentially
will have to be “Metroed” or make its users have to move to the desktop. Since
I have seen Tweet@rama in demos on Windows 8, I think Tweet Deck will have to
get itself “Metroed”, if it wants to stay alive…

Flash will be on the desktop side of things only for Windows
8, and that includes AIR. So what does this mean for Flash? Well why would a
user want to “flip” into desktop mode, go to a website or open a Flash based
application and leave the lovely Metro world behind? It isn’t going to happen.
Sure for business applications, complex studios (such as photoshop), users won’t
mind moving back to the desktop, but then it makes sense to be in desktop mode
for these kind of complex applications. But most things in Flash are either to
enrich our web experience or to provide a cross platform simple(ish)
applications – such as Tweet Deck. So in the new world, those apps would be
delivered by XAML in Metro and by HTML 5 in the browser, leaving nothing for Flash
to deliver.

The future…

Well the future of the web is HTML 5, the future of real
RIAs is Apps as too is the future of desktop applications. For complex
applications and legacy applications we will have the classic Desktop mode from
Windows 8, and I think this makes a lot of sense. Essentially Windows 8 is
everything to everybody; no matter what they want, expect and need to run…

WPF and Silverlight developers will simply be named Metro
developers (or something similar), web developers HTML 5 developers and Flash
will slowly disappear from the PC as it has already the iPad and probably Mac
OS…





Why does Apple love HTML 5?

20 03 2011

There is an awful lot of talk and hype regarding HTML 5, with one of its main advocates being Steve Jobs and more importantly, Apple as a company…What so many don’t ask themselves is “why is Apple making a big push for something that essentially provides them no revenue”

 Apple often site HTML 5 as one of its reasons for not supporting Flash and Silverlight, stating they support the web free of plug-in technologies and want to ensure the web stays open source etc etc. Whenever I hear this it is so obvious that there is a different agenda, after all it makes no sense for Microsoft (with Silverlight) or Adobe (with Flash) to charge for these technologies, if they did, no one would use them and no websites would leverage them to deliver rich applications. What I continually find astonishing is the amount of so called journalists and bloggers that believe that Apple want a free, open web. Let’s remind ourselves, Apple exists to make money…

What’s in it for Apple?

Let’s ask ourselves, what’s in HTML 5 for Apple? I mean really in it for them? The answer is, Apps…

Now I may have lost you there, you probably thinking apps have nothing to do with HTML 5 as such, and you would be right. You see, HTML 5 is the future of the web for sure, and it will bring new life to the web with animiations, even video playback to an extent, (though we have this via Flash and Silverlight already, so nothing new to the web, just new to HTML). HTML 5 won’t make the web a “richer place”. You see, HTML 5 will still suffer the same limitations, namely running in a browser, the web architecture and the end user experience (not to mention cross browser compatibility issues, DDA compliance etc etc). This means websites wont be all singing and dancing apps, rather they will remain pretty much website experiences we have at the moment (well with a bit more “jazz” to them). You see, Apple is counting on the web going back to its roots more, and we are seeing this with many more websites looking cleaner, and simpler to meet certain compliancy issues and to make life easier for users (not to mention making life easier for developers when supporting all browsers across all platforms). What Apple doesn’t want is real rich applications to be delivered via HTML 5, well not the type that can compete with desktop based applications, or mobile apps.

Apple doesn’t want HTML 5 to be the wave of the future for application development because it can’t make money from that, rather it wants us all to have to “download” and use specific “apps” for platforms. Think the iPhone App store and you see what I am getting at.

Essentially one of the biggest reasons people opt for the iPhone is not because it’s the best looking phone, it has the so called best screen display (which it doesn’t) nor these days for its revolutionary touch screen and OS, no, it’s because of the App store, and the rich “internet” experiences these apps open the user up to.

Flash and Silverlight are technologies that can deliver “apps” via the internet and over the internet, cross platform, cross browser etc and all from the same code base. This is a real threat to Apple. After all, if I can write a great app using Silverlight and have it deployed with small mods to any form of device, then as a development company I have opened up my markets and saved money. This is a good thing. However, Apple now would have an app that, though rich and great on its platform, is just as good and readily available on other platforms. Which detracts from some of the appeal of its own product.

You see, Silverlght and Flash are real threats to Apples unique “app” store.

Here is an example of why Apps are the future and why Apple wants us all to love HTML 5.

How do you use Facebook on your mobile? Do you use a browser and the HTML version? Probably not because it’s too slow, clunky and the end user experience not that great. You use Facebook via your Facebook app for your mobile, which you downloaded from an App store (for apple, android or market place for windows). Apple take this further with the iPad, providing not just an app for your iPhone, but a slightly different app that works better on the iPad, the iPad being something that apparently is designed for web experiences on the go. Yet it still wants you to download apps, and, that is one of the reasons why Apple don’t want us to use Flash or Silverlight, because these technologies can deliver rich “apps” onto any platform potentially, not just specific to the iOS.

Today I watched an advert for sky news, and there was no mention of the sky news website, only that, for the very best experience, use the sky news iPad app…What does that tell you?

This confirms that Apple see Apps as a way of cornering the web market, especially when over 30% of web consumption was via mobile devices last year in the UK. The future of the web is reverting back to information based sites, with richer websites being delivered in HTML 5 yes, but real applications, and real rich intuitive experiences that work on multiple devices coming from dedicated apps.

Conclusion

Apple doesn’t want to supports Flash or Silverlight, if it did it means they have lost their app store edge. Imagine sky news delivering one solution for all platforms via Silverlight. The advert would have been “get the very best experience with our Sky News App, for iPhone, iPad, Windows Phone, Android and to your desktop”…Immediately, I don’t need to have an iPad to get the very best experience, rather I can choose which device, which OS, all of which detracts from Apple’s marketing and business plans in many may ways.

Apples tactics of using “content” to help us make the decision to purchase their hardware aren’t anything new. Look at how VHS beat off Beta-max? VHS was a lesser solution, but it had more content on it, and more to the point, content that was in high demand. Because of this, it meant users opted for the VHS platform as they then got the films they wanted, which meant Beta-max sales dropped until there was only one, VHS.

So while we all harp on about how great HTML 5 will be, we must remember that the big players (especially Apple) want it to succeed only to destroy Flash and Silverlight, which plays right back into their hands of delivering true rich experiences, only via their platform specific dedicated apps and app stores..And of course, we all do, so we will all be using apps to access the web…

I am a strong believer in the future of the web being Apps, as applications will always be able to potentially deliver far richer end user experiences. What I don’t want to see though is the need access the best experiences based on hardware and what is made available though an “App” store.  We should be able to access these apps directly from web pages, and opt for the mobile version, or the desktop version, or the slate version.

HTML 5 may be a way of lighting up HTML and making it richer, but it potentially could also be the way of forcing us all down the route of App stores and choosing hardware to best access web content. Now to me, that is not the point of HTML 5…





HTML 5 – It’s not the end of internet plug-ins

4 06 2010

I have posted a number of times now about HTML5 and my concerns that people see it as a complete replacement for internet plug-in such as Silverlight and Flash, allowing RIAs to be delivered in pure HTML 5. One of the main people who keep going on about HTML 5 is Steve Jobs (though I think a lot of this is trying to convince the users of iPhones and iPads that Flash has a short life ahead). However, it seems that more and more people are sharing my opinion that HTML 5 will not kill of Flash and Silverlight, and that its adoption is a hell of a long way off in general…A recent report and article from Forrester illustrates this…

HTML 5 traction and buzz….

There is for sure a lot of buzz around HTML 5 in the past couple of months, least not because of Jobs, but also because Google has recently open-sourced its VP8 video codex. To date, abilities and licensing issues surrounding such video converters have been one of the sticking points for beta HTML 5, however this is not the only issue. Though there is a lot of internet buzz, it seems that adoption of HTML 5 is a long long way off, with browsers only supporting small fragments of HTML 5 currently. It seems that for wide spread adoption, as users we will be waiting until 2020 or sometime around then…That’s not exactly close is it…Its again another reason why I am not at all “hyped up” about HTML 5, it’s just so far off….

So while HTML 5 is a long way off, just think how much traction Flash and Silverlight will gain in this period. Silverlight is the new boy on the block, but has already around 60% adoption across all machines. That’s rather impressive, all this while HTML 5 is in beta releases and going through a lot of, development pains and issues shall we say…

There is also the issue of cross browser issues. Just like HTML 4, HTML 5 will suffer at the hands of different browsers. The author of the Forest report (Hammond) stated “Until you get consistent behaviour the question will be why you would use HTML 5 when it actually creates more challenges than it solves from a testing and deployment perspective.” I have to say, this has always been an issue with HTML in general, especially when delivering internet applications, and it is one that won’t go away for HTML 5…Though HTML 5 is supposed to be intended as an enterprise-class product, the reality is that the architecture of HTML 5 with the browser has a number of issues and draw backs, even when talking to web services. Though the aim is for HTML 5 to allow easier building of “applications” the fact is that HTML and that side of the web architecture was never designed with this in mind….

Test once…You are all done…

Ahh, well this is not the case is it with HTML. Unfortunately you will need to perform tests on all the browsers out there, and no doubt, place “HTML fixes, CSS fixes and JavaScript fixes” into your application depending on what browser is running it. This does make life a lot harder for testing and development, oh, and of course ongoing support. However, this problem is just not there for Flash and Silverlight, because their architecture is completely different and in many ways separate from the browser and the web in general, indeed you can run Silverlight out of the browser fine…

Hammonds recent report – titled “Does HTML 5 Herald the end of RIA Plug-Ins? Not Really” – found that application delivery through RIA amongst businesses rose to 34% in 2009, up from 26% in 2008. This illustrates the increase use of RIAs amongst businesses, especially with technologies such as Silverlight develop further, all this while HTML 5 is still in its draft phase…

For traditional website material, you could still use HTML and HTML 5 if you wish, however for complex functions and applications, I would always recommend the use of Silverlight, there are just so many hurdles you negate while being able to use a technology that isn’t restricted by the browser web architecture.

Open aspect of HTML 5

So many people claim they love the idea that HTML 5 is “open”. And there are some good arguments made for this, however I have yet to see one example where these arguments are valid. Especially arguments that users may have to pay for Flash or Silverlight use, that you can become restricted to what browsers you can use, or that you are dependent on them for your support…I don’t see an issue or potential issue with any of these arguments, they are just created so people try to feel more safe with an “open” technology controlled by many rather than a single company…

However, this open aspect of HTML 5 may also work against its progress and adoption, especially as open standards are very slow to develop. HTML 5 has been in development for a decade now, and though early candidate releases are recommended for 2012/13, it is a while yet before we see HTML 5 as the standard version of HTML being used. On top of that, cross browser issues and W3C adoption is even further off…

Architecture…

RIAs require processing on the client, or at least they should do. Users expect “thick client” performance and usability in an RIA and on top of that, access to hardware components, such as storage, web cams, other applications running on the client etc etc. The architecture behind the web and HTML jsut doesn’t allow this. Though HTML 5 will bring us a richer web, with easier video playback, website animations and improved usability (a little like Ajax has done), it will always be behind Silverlight for example, that can take advantage of hardware on the client, keyboard interactivity, integration with other applications and the ability to work in a “disconnected state” from the internet….

My own view on the use of HTML 5 in the future…

It simple, for typical web content, HTML 5 will provide a greater level of interactivity, animation and improved user experience. It will no doubt be used for “simpler” RIAs, however its adoption as a serious RIA for businesses is plain fantasy. RIAs need to deliver more, and therefore organisations will continue to look to plug-ins, especially Silverlight more and more. I also believe that websites available to the general public will also have more aspects delivered in Silverlight, even once HTML 5 has gained traction, simply because Silverlight can deliver a better end user experience without many of the hassles associated with web development and HTML, CSS and JavaScript across multiple browsers…..