Steve Jobs thoughts on not supporting flash – they just aren’t justification!

29 04 2010

There has been a lot made of Apple products not supporting flash and many people getting frustrated with iPhones, iPads etc for not supporting flash. So it was good to see a post by Steve Jobs on his thoughts and reasons why Apple do not support Flash…However, when reading it, let’s say I didn’t read any real reason why Flash isn’t supported…

You can read his full article here http://www.apple.com/hotnews/thoughts-on-flash/

So where to start? Ok, well Steve talks in points, so I will follow and give my own thoughts on this…

First, there’s “Open”

Steve talks about proprietary software, and puts forward a kind of weird argument that everything on the web should be open source. This is rubbish. What I say is without proprietary software and hardware, there wouldn’t be anything out there for developers to develop software with, not to mention how would the economics of the IT market sector function – if everything was open source…Well they wouldn’t…So I always hate this argument and these kinds of statements. (I also get a vision of developers basically living off of other people’s capabilities). In addition I find this weird as Apple has masses of proprietary software and hardware, and yet doesn’t see this as a little contradictory. Apple after all are trying to sue HTC for copying their hardware…Hardly the kind of “Open” form of thinking is it…Sorry, also mentioning Webkit open technology within browsers doesn’t mean you embrace open source. Rather it demonstrates that you have used open source to get your fingers into more pies…

There is nothing wrong with Adobe controlling where its own product goes. Proprietary software goes through iterations a hell of a lot quicker than open source, in addition I would say that most of the time it is far less buggy and secure (ok secure and Adobe at the moment don’t go that well together, but you get my point). I have to be honest, but I don’t think this “Open” argument has anything to do with Flash not being supported on apple products, rather it is a ramble at trying to attract the “Open source is great” crowds out there and looking for additional excuses to why flash isn’t supported. So as far as this justification goes, sorry Steve I don’t buy it….

Second, there’s the “full web”

Ok, now we are getting into video and a little into games. Steve breaks this down into video and games. So, first off, yeap, video content in Flash could be using a more modern format, H.264, however, many places on the web they aren’t. Saying that you could play video if websites used more modern formats isn’t really a great argument for me. The fact is the websites aren’t, they work fine on the Mac and PC so why not on iPads, iPhones etc? Sorry again this is a poor justification. I recently posted my own wedding video on a couple of sites, Facebook being one of those that Steve mentions, and guess what, no one who had an iPhone could view the video, great….Sorry there is no justification here that I see for not supporting Flash.

We now move onto games. Yeap iPhones cannot play Flash games, well that’s obvious since Flash isn’t supported. Again by stating that you can access over 50,000 games on the App Store is not a justification for not supporting flash. This is rather a, “ok, you want games, we have 50,000 here” statement.

So far this is 2 justifications mentioned and neither one is valid….

Third, there’s reliability; security and performance

Now Steve is finally providing some real justification. Symantec did highlight Flash for having one of the worst security records in 2009, and this is one of the reasons why so many corporations don’t allow flash to be installed on their PCs. What makes me laugh is that I wonder how many people actually (I mean day to day end users outside of the world of IT) know Adobes record on security. I am sure people only think Microsoft based products have a bad security history…hmmm. Weird how press and perceptions can be wrong isn’t it…

Apparently Flash is the number one reason why Macs crash, weird, I keep on hearing that they never crash…hmmm Sorry that is a dig outside of the scope of this post, none the less this is a valid justification for not supporting something on an iPhone, iPad and iPod. PCs suffer too at the hands of Adobe software, and we are not just talking crashing, rather performance issues etc etc.

Steve then talks about Flash not performing well on mobile devices. Again, this is a valid point, I have never seen it perform well on anything other than a high spec PC and I am well aware that their mobile support etc has been slipping ¼ by ¼ However, it will and should be available…

I also have to state that, is the iPad really a mobile device? I have seen Archos mobile devices (very similar to the iPad) that basically run Windows 7. That means I can get Flash, Silverlight and anything else on there I want, surely this is just a failing of the iPad?

So far, that makes two invalid points made, and 1 valid point made.

Fourth, there’s battery life

Ok, when I read this title I did laugh. Every person I know who has or has ever owned an iPhone says the battery life is shocking, and that’s without running flash on it. Steve states that the iPhone will play H.264 for 10 hours and yet only 5 hours if playing a video through Flash. I can see his point here, however, the battery life is so poor on the device in the first place that the owners re-charge every 10 hours in any case.  So though this has some good points, and yeap could be argued for a reason not to support Flash, I have to say I don’t see it as a real reason…

So, in Steve’s 4 reasons why they don’t support Flash, just 1 of them are actually valid reasons….Two more to go…

Fifth, there’s Touch

OK, now this read to me more of a marketing bit about iPhone touch etc. So what if Flash uses “rollovers” I can still click on that icon and it will trigger the rollover. By saying because a device is “Touch” it won’t trigger rollovers is rubbish. What makes me laugh in this statement, is that Steve then talks about more modern technologies like HTML5, CSS and JavaScript (though the last two are not modern at all) and yet forgets that most of these websites that use these will use rollovers and effects to hide and show layers….

The statement that most Flash websites would need to be re-written to support touch-based devices is simply rubbish. I have used Flash websites on a touch screen and all works ok…

Sorry, this is a disgrace of a reason…Thats 5 points made, just 1 valid…

Sixth, the most important reason

This is the main reason why Apple will not support Flash, and the complete post by Steve could have been just this single post (if it was, I would have a lot more respect for the post in general – though it isn’t a valid reason). Basically, Apple doesn’t want to provide freedom of how you develop games and applications for the iPhone, iPad and iPod. They want all software to run through their proprietary SDK (and I can see why this is good, and why it is bad).

There are some good points made here, and some bad. Sorry, I don’t believe that by allowing a developer to develop on a third party platform that sits on-top of the device OS leads to sub-standard apps. This is just not true. You don’t develop for a PC using the actual Windows OS directly. This is just a bad statement again, think .NET, think Java, these are the main two platforms for all software development….

The statement that “we cannot be at the mercy of a third party deciding if and when they will make our enhancements available to our developers” is again rubbish. If Adobe was slow to adopt these, then developers, who choose not to develop in Flash, simply would be ahead of those who do. This would mean their apps are the ones that get downloaded and developers would soon move away from Flash. So this is just rubbish again.

Steve takes his point further stating that it is worse if the third party provides cross platform developer tools. Why is it worse? Well don’t read Steve’s reasons. The reason (and this is the reason why Apple don’t want to support Flash) is that a developer can develop an app once and have it available on multiple devices, not just the iPhone etc. Which means that end users who may choose the iPhone for some of its cool apps, may not choose an iPhone because the same cool apps are available on other devices…This is Apple trying to lock people into the iPhone with the power of their massive AppStore, nothing more…And this is why they don’t want to support Flash….

Conclusions…

Steve’s conclusion is nothing more than a dig at Adobe. My own conclusions are that Flash is an outdated technology, with serious security and performance issues (this is why I am a strong fan of Silverlight). However, it is a technology that will be around for a long time to come, and that means that it should be available on mobile devices. It is also cross platform, and that is very good (though not for Apple). Sure security and performance are issues, but they aren’t reason enough to not support Flash when they already support Flash on the Mac. If Adobe can address their security problems, then I see no reason why not to support Flash…

 I also have to say that this great HTML5 era will not happen as Steve sees it. There are still so many problems with HTML 4 and cross platform / browser issues that HTML 5 will not address, only inherit.

In Steve’s entire post, I only read a single valid point for choosing not to support Flash. The rest (with the exception of the last) are basic “excuses” or are simply wrong. The last point in his post though, I feel shows the real reason Flash will not be supported, and that is because it gives the user more choice of mobile device…Simple….

At the moment Apple are trying to lock the Mobile device market sector up, and one of the real reasons this may be possible is because of the AppStore. The AppStore ensures apps are developed using their proprietary SDK for their proprietary OS and proprietary hardware, which means that to have the same application running on Android or Windows mobile, the developer has to re-develop from scratch (well almost). While the iPhone has such a good market showing, this approach will continue to work. However, what of the future? With many more users discovering HTC type phones, phones running Android and soon phones running the much anticipated Windows Mobile 7, will this last? (I don’t think it will looking at sales figures etc for the HTC Touch HD2 for example)

As a developer I feel the only “Open” area that should be in place is being open enough to have your devices run a multitude of development platforms, be it Flash, proprietary SDK or Silverlight. I think Windows mobile 7 approach by adopting Silverlight as the development platform will help Windows based phones grab more of the mobile market place, and if anything move ahead of the iPhone. Windows Mobile 7 allows users real choice on how they access the web and content, as Silverlight will run on their browser, out of their browser, on a Mac, on a PC oh, and on their phone…

For me, the Apple position is one of trying to create a monopoly on smart phones, not one for the good of users, no matter what Steve Jobs and Apple claim….After reading his post, I hope it backfires to be honest…





Can we help business users engage more with ECM

23 04 2010

I have posted a number of times about the benefits of ECM solutions and what a positive impact they can have on any business, be it small or global. However, ECM is still a hard sell, and for many, even once they have a good system in place, they don’t really get the end user engagement that is required to make ECM really work well for an organisation.

So why is this? Why is implementing an ECM solution so hard to ensure real user engagement? What are the problems?

The easy part

When we talk about ECM and even demonstrate it, the first thing or the easiest thing to show is the retrieval of content. This is always easy for business and end users to grasp. “So you’re looking for a particular file, well, do this, this and this and hey, there you are, there is the file you want to work with…” This is great, and in essence, is the heart of ECM. However, retrieval is always the easy part. The problem is ensuring that the content we are looking for is actually in the repository….

Habits

Content that should be in a repository is everywhere; it can be in the form of a business contract document you are drafting, or in the form of an email etc. Now for the actual user who is working with this content, ask yourself, what do they do with it? I think most of the time you will find that, if a file, it is more than likely to be sitting in old reliable “My Documents”, wait, maybe even a “My Documents” on a server in some cases. However, its name is more than likely to be something meaningful just to that user, oh, and that is the only distinguishing part of the content…..So what of our eMail content in this example. Well, if you are a small business and are using POP3 mail then it’s just on their machine now. If you have a mail server (such as exchange) then it’s sitting on or in that mail server.

So, when using my ECM solution, I can’t actually find that content I require, because it simply isn’t in the repository. This means no matter how good your ECM system is, it is pointless because it isn’t holding the content you require….

Increasing scope and engagement

The only way to get all content into your ECM repository is to make “capture” processes easy. I am not going to talk about scanning of physical paper here (see other posts I have made on this), but capture of content that is already in digital format. This has to be as simple as possible, and include easy access from a multitude of other applications.

By making this easy, and more important, almost part of their current working habits, then any ECM platform will perform and give back more to an organisation, simply because it will hold more of the relevant content within it. This is the key to a good ECM platform, and getting all those efficiency and productivity gains ECM promises to deliver.

Becoming adaptive

I have spoken a little about being flexible and adaptive; more so with regards to BPM, but the same arguments are valid here for ECM. Typically capture processes and the way in which users are expected to work with ECM is very rigid. This needs to become more fluid and adaptive to their needs and requirements. How many times do we see a user wanting to engage and add content to a repository, only to find that, well it is hard to assign properties and values to a piece of content because it doesn’t fit within the designed and rigid system parameters. Let’s become flexible and allow the user to update these parameters so that the content can be stored correctly and accurately. This is to the benefit of everyone involved.

In addition, as an organisation, you need to ensure you chose an ECM platform that can adapt to your requirements. A key part of ECM is application integration, and it is no good utilising a platform that you cannot integrate easily with other business applications, or more to the point, with business application you are yet to purchase….

 

Quick conclusion…

If ECM can fit into end users habits, almost seamlessly, then engagement of users is going to be far easier and greater. If we take this further, and provide ECM solutions that are more adaptive, more flexible and more readily and easily available to users, then ECM will become the cornerstone of any business, as it should be… It is thinking like this that has made me push for our own ECM platform and is why my company is working hard to get the new workFile ECM Vision platform ready. ECM has so much potential, the key is unlocking it for users – which ultimately benefits business…





All businesses must invest in IT & IT Support

7 04 2010

I think this is something that so many businesses overlook, and I don’t mean just large corporations failing to invest enough in their IT and IT support, but also SMEs which seem to see this as a luxury rather than a necessity.

This week I have spoken to a number of SMEs who simply have cut or have never really invested in their IT systems with regards to support, maintenance and upgrades. Many of these conversations have started something like this:

“Why is our system running so slow? Performance is just not where it should be, or needs to be”

Or:

“Software these days is so in-efficient, why do I need such powerful machines”

Another classic:

“Nothing works properly here, why doesn’t it just work!”

This last one is one of my favourites as it is almost always made by people that just haven’t invested in their IT at all, typically they are using systems and solutions that are rather dated now.

So in this post I want to look at some of the questions and statements SMEs have asked and raised and give some quick responses. In addition any comments on other typical issues should be added to the bottom of this post, as it will help start-ups and SMEs alike I am sure….

Why do I need to invest in maintaining something if it works?

This is a great question that many SMEs ask. They see that their system is running fine, and then presume it always will do, without any changes in performance etc. However, they almost always forget that their use of the system changes over time, and different things are happening on their server, network and machines second by second. This means that something working fine today, has the potential to be not working so fine tomorrow.

In real and practicle terms, as soon as you start using a server, network or just a machine, you need to get a valid and good level of support in place. Things and use of IT move so fast, that one thing may be shiny and new right now, but in a couple of days it could be performing slower than a machine / network with half of the specification, simply because you have not maintained it…

Why do things get slow?

This isn’t an answer, nor a list, more of some guidance to an understanding of why things get slow…

This is almost always due to use of RAM or configuration of the machine / network. Basically there are some key things to remember, your machine configuration can change any time you install new software, this does include Windows updates or updates to any software. Updates can be triggered just by using a particular application – so you have to make sure you maintain things correctly to stay on top of the situation. In addition, more updates are installed on the server or machine over time, this could be for security reasons and should always be applied. If they aren’t, they are just wasting space on your system and can have a big negative effect on performance..

Finally, the most common thing is having processes running in the background. These processes take up available RAM and basically mean the machine is doing too much work (even though it may appear to be doing nothing). It is worth remembering that the more things that are installed on a machine, the more RAM is typically used up by either the application itself, or processes associated with it. (Some software companies are awful for this!)

We sometimes just get weird behaviour

Sometimes you get really weird behaviour, for example your system is rapid sometimes during the day, and other times nothing works and it all grinds to a horrible halt. Again this will be due to something being processed on the server. This kind of issue can be hard to resolve as it can be hard to pin-point the culprit for the issue. In some cases it can be something as simple as poor computer cabling and packets being lost across the network. Other times it can be highly confusing as it appears nothing is running at all and could be due to a Windows update, software update, actual hardware fault, IO issues etc etc..The list could go on and on….

The key thing is, if you start getting this type of behaviour, it is too late already! Good IT Support services and maintenance would have ensured this didn’t happen, however, if it is happening, get ready for some lengthy investigations into the cause and then the attempts to put this right….Whatever you do, don’t go back to software vendors and look for performance updates etc. As any updates will be negated by the real problem. You must must must address the issue immediately if you start getting weird behaviour like this…..

Pop-ups, website addresses are wrong …. We just ignore these things…

Don’t ignore this, this could indicate a machine or the network has some viruses or Trojan based software. If this is the case, your complete security and network is at risk…

What else can go wrong?

Failure to support and maintain your system can result in a catastrophic failure. Now think, you are an SME and your whole system and day to day operations run across your network. If your server goes down, it more than likely means you can’t actually run your business. In some cases, this fault (and if you haven’t been backing up your data) could spell months of lost revenue and one hell of a headache.

So the solution, invest in IT support services

Well, simply put yes! If you have a good IT Support company looking after your IT then most of your issues will be negated without them ever being realised. Users may report the odd issues, but these will be issues and small annoyances, nothing major, and nothing that will effect productivity or the running of the business. However, just because you invest in support and maintenance, doesn’t mean you don’t need to invest in your IT equipment in general.

Remember, that software, updates etc move so fast as too does IT equipment itself. If you bought something top of the range on Monday, no doubt in three months time it will be mid range at best…Because of this many organisations look to lease their hardware to ensure they can upgrade every 2 to 3 years. This kind of investment ensures not only that machines are kept up to date, but also that performance is maintained, if not improved. It also side steps many many issues with regards to hardware / network failure.

So to all SMEs out there! I strongly urge you to invest in your support services and IT investment. A great way is to look at leasing options for hardware and support services bundled in. In this way your costs are monthly and constant for the term, in addition, it ensures that your server, network, machines and ultimately software performs just as expected – helping your business do business smoothly….





Does BPM need a W3C type Standard? No way!

6 04 2010

I have read a lot about the need for BPM to become more standardised, similar to the way in which HTML has a “standard” that is followed. Now, I have already posted about some of the limitations HTML has, and the problems we have with HTML running in different browsers, however, if we tried to do something similar with BPM, the problems will be far far greater than any of those a web developer faces with HTML and CSS…

Standards stifle innovation and hamper evolution

This is a simple statement and it is very true. There are many benefits of working to standards, and I embrace standards in general, however, having standards set in stone for how something works, or is defined, is very different to say, having standards on naming conventions when coding…

The problem with working as a standard is that when someone thinks out of the box, and they want to implement their great idea, they instantly have to break the “standard” to do it. Let’s take HTML as an example. The HTML standard simply doesn’t include everything we come to expect from the web today, this is why Flash was developed in the first place. I know HTML 5 is to be the new standard in years to come, but this looks to be yet another number of years away (and that is a different post). In the mean time, what do we do…Oh that’s right, we abandon the standard and use something proprietary, Flash or Silverlight to get the job done. Once HTML 5 catches up, oh I will more than likely still use Flash or Silverlight as they have moved on yet a further 10 years too…..You also have to remember that Flash has been around for years and years now, so we have worked with RIA for sometime without the HTML standard as such….

The HTML standard needs to work to some extent (even with Flash and Silverlight) because the architecture of the web. We use third party browsers to render and display our web pages, and HTML is the mark-up that describes to the browser what to do. So in this case, sure we need a standard of sorts so that the browsers know what to do with the HTML, and vice versa, designers and developers know what HTML to write that works how they want in a browser….

However, in the world of BPM this really isn’t a good option. BPM is very generic, and can encompass so many things. By stifling organisations to adhere to a particular standard will only stop BPM evolving quickly enough to keep up with business requirements. Take social BPM, if we had to adhere to standards, would Social BPM be where it is today, or would we have a “break away” number of platforms that deliver Social BPM functions and not adhering to the BPM standards….As I said, standards stifle innovation and evolution….

The designer has become the standard

Unfortunately the process designer has become the “norm” or “standard” for how we define processes in a BPM platform. Again, this is far too restrictive and something I have spoken about in a number of posts now. I won’t go over this ground again here, but if you are interested read

http://andrewonedegree.wordpress.com/2010/01/14/intelligent-bpm-maps/

http://andrewonedegree.wordpress.com/2010/03/24/adaptive-bpm-no-mapping-tools/

BPM needs to step back and away from the designer as it currently works. Please don’t miss understand, I am happy to see processes shown graphically, however, I don’t believe this graphical representation (made up front) should be how the system runs. For one thing, this presumes our BA has everything correct, it also presumes that the process will not change based on user requirements and finally, it presumes limited integration (at best). Unfortunately the designer is a great tool for demonstrations and showing processes running quickly, however it is not a great tool once a business buys into BPM and finds out just how restrictive this way of thinking and working is…

Is there a place for standards at all in BPM?

YES! The only place where standards should be introduced is that of integration and API. It shouldn’t matter what technology your BPM platform is built on, be it .NET, Java etc, its API, should be technology and platform independent. This means the standard for an API should be XML Based Web Services. In addition, it should be a standard that the BPM platform itself is built on its own API, ensuring that integrators can gain access to everything they need from the BPM platform via its API (I hate to see platforms – not just BPM – that have a limited API). I wouldn’t take this standard further (though I am sure some would call for specific calls to be used to do x,y and z).

With this type of standard, BPM can be used within other LOB applications, it expands the potential use of BPM and provides businesses with a level of abstraction for business rules that makes their systems far more agile and, if your BPM platform allows it, adaptive….This must the goal for BPM moving forward…





Silverlight 4 or HTML 5?

6 04 2010

I have been asked this question a number of times in the past 2 weeks, and it is something I have posted about a little in the past http://andrewonedegree.wordpress.com/2010/02/04/abandon-flash-silverlight-for-html-5-no-way/ however, I think I need to clarify my position on this a little further and make it clear just what is the choice here…

HTML 5 and Silverlight 4 are very different “technologies” if you can call HTML a technology. HTML 5 is designed to bring a richer “environment” to websites, basically allowing it to do many things we have taken for granted with Flash and Silverlight, such as animations and the playback of video. However, apart from this, all three are quite different and have their own positives and I guess negatives.

So to answer the question, Silverlight 4 or HTML 5 you have to understand just what you are trying to do, and more importantly (at the moment) when you want to be able to do it…

When?

No matter what your requirement, if you are looking to implement in the next 12 months, then HTML 5 is a no go. HTML 5 has been in development for over a decade now, and it is still a very long way off (well in terms of all its capabilities). Certain browsers have been shown to support HTML 5 in the next year, but this is just elements of HTML 5, not the full monty. All this means, if you want to enhance your website / business application with HTML 5, you are better off waiting for at least another year probably longer before you start evaluating its potential use. For many, this isn’t really an option, so it means a lot of the HTML 5 talk is nothing more than hype and fancy (alas this is true).  So if you cannot wait that long, then I suggest you look at Silverlight.

However, that all being said, if you are thinking longer term, then let’s look at what you want, and if you should be looking at Silverlight x (by then) or HTML 5….

What you want?

If you are looking for just some animation, smoother interactions around the screen and video playback, then HTML 5 may well be the best option for you. This is where HTML 5 will make its mark, providing web users with better experiences. However, this is where HTML 5 capabilities also stop. You see, like HTML 4 currently, developers need more if you want to do more than just show content – they need the capabilities to integrate with web services, interrogate databases, perform calculations, apply business / user rules etc. To do all of this, developers use ASP.NET / PHP for example, which in turn has web pages formatted using HTML. With HTML 5, you are buying into this same architecture, with all its positives and negatives. Dont think that you just do everything in HTML 5, because this won’t be the case..

So when would you think about Silverlight 4? Well, if you want to do more in terms if a rich user experience, and or in terms of functions and capabilities then you will need a more powerful environment, that means managed code. Let’s just compare video for the moment. With HTML 5 we will have the capabilities of showing and playing video in the web browser. However, with Silverlight, you not only have this capability, but also the ability to do much more, such as rotate this, show a video on-top of another video, merge other content on the video, provide video links, add special effects, show video in other controls – the options are limitless….Now let’s take things further, away from simple video playback…What about providing real functionality, processing capabilities etc all things that are typically used for business based applications? Then you need something that provides a “proper” development environment….So Silverlight will for sure be your platform of choice….

Silverlight presents a different architecture in which to use. Applications are accessed across the web, yes, however they execute and run on the client PC, very similar in fashion to having an application installed on your machine via DVD. (The browser does not execute their code, it is simply used to “host” the Silverlight application). This means the application uses your PC processing power directly, it doesn’t need a browser to interpret its format or what it wants to do / show. In addition, Silverlight doesn’t need to rely (or keep talking too) the web server for all requests, many are executed / calculated there on the client machine. In addition, this also means that we can choose to run our application outside of the web browser, ensuring we are not limited to the limitations a browser places on our application. From a developer’s point of view, Silverlight is managed code, and runs on the .NET platform (which provides designers and developers with all the freedom they need to deliver applications that meet all requirements).  From a business point of view, this means there are no restrictions on what you want to achieve with your application.

Quick conclusion…

Its down to time and requirements. If you need something within the next 12-18months, then HTML 5 wont be for you. If however, you are looking for a “richer” environment that doesn’t need complex capabilities, application integration options and is really only used for displaying content across the web, then HTML 5 will be your choice. Finally, if you need to do more, such as provide business type functions and capabilities, then Silverlight 4 will be for you, or at least a mix of classic ASP.NET and Silverlight…..








Follow

Get every new post delivered to your Inbox.

Join 774 other followers