you're reading...

Why I don’t like HTML5 but will still use it.

Like many I am no exception to the new buzz created by HTML5, I have been advised on many forums to go HTML5 way because that the future, note worthy lots of e-learning companies and tech forums are talking about it, so much so that one e – learning company I’m subscribed to changed their online video player from silver light to HTML5, and I realized it’s time to change.

But being a programmer for these years I had a bad habit of approaching a problem in reverse engineering way at its first place , ( what the product will deliver, what will be the programming language , then architectural design and then requirement analysis if time permits , ) but here my problem ;

Is HTML5 is right tool for developers?

HTML5 is going to make browser environment more powerful, so much so that it will make the web browser into an application runtime similar to .NET CLR, Yes, web browser is new runtime environment.

Is this good for .NET developers like me?  Is this a good way to develop applications for the next 20 years or is this a big step backwards in application development? Too many question marks.

Let us understand what is actually an application runtime environment?

An Application runtime environment is an environment that hosts the execution of application. The application runtime environment is written for a specific OS, but the hosted application can be written in any available wise range of programming languages for the application runtime environment which makes these hosted application platforms independent, .NET application runtime environment example is CLR.

With HTML5 we are making browser into an application runtime environment?

Having the Web browser become an application runtime environment is in principle a good thing. However, using HTML as a Graphical User Interface (GUI) language, JavaScript as a programming language and Cascading Style Sheets (CSS) as a layout language is architecturally unsound. It will lead to spaghetti code applications, and will take HTML5 applications longer to develop and cost more money to build than comparable desktop applications.

So it will be an architectural flaw building application in HTML5, Yes, it made it right here.

HTML5 is kitchen sink of technology, mismatch of functionality build on top of past design mistakes or shortcomings of technology.

HTML was designed to be a document structure language. It lacks the most basic features of a GUI language such as the ability to create real dialog windows. Most usage of HTML to create GUIs involves kludges, such as using floating DIV elements instead of real windows. Not only does this create user interfaces that do not comply with standards for the given operating system, but also they are not accessible.

JavaScript was designed to be a lightweight and simple language to give a more interactive user experience. It was a language for non-programmers. JavaScript in HTML5 lacks the rich class libraries found in Java and .NET. Class libraries contain reusable functions for features such as advanced drawing, encoding, encryption, network communication, etc. Also, the way JavaScript is implemented with HTML makes the browser vulnerable to security breaches.

CSS lacks the necessary features for doing layout for Web pages and certainly does not have the necessary features to do layout for applications.

Are you ready to write and maintain spaghetti code with HTML5

Because HTML5 applications will be built from loosely coupled technologies, often by non-traditional programmers, the result will inevitably be spaghetti code – code that is complex, tangled and full of workarounds for browser versions/bugs or shortcomings in the technology.

And development will cost more(Huh! Why I’m saying this, i will be still paid same)

Most of the time (and therefore most of the money) spent in developing applications is consumed by debugging. Because of the loosely coupled technologies that make up HTML5, it is not possible to create an Integrated Development Environment (IDE) on par with Visual Studio or Xcode. This makes debugging HTML5 applications far more difficult than comparable desktop applications. Also, JavaScript is an interpreted and loosely-typed language which also increases the complexity of debugging. This means that the development of sophisticated applications will require larger development teams, more time, and more money.

So a question to these browser vendors, you’re making the browser into an application runtime environment for us developers – right? Before you started, did you ever think to ask us developers if we want to continue using kitchen sink technology for the next 20 years?


About Vishal

Vishal Nayan is a seasoned professional with hand on Experience on Mircrosoft Technologies. He always look for challenging IT position that allows him to learn new Microsoft Technologies while utilizing experience of Project Development and Software Engineering Ethics. A MCP in WCF ,and looking forward for more.


No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s


Follow Vishalnayan on WordPress.com

Blog Stats

  • 217,142 hits


%d bloggers like this: