Web vs. Desktop Apps: “Never Bet Against the Open Web”
HTML5 and EcmaScript 5, provide very powerful APIs that blur the line between the Web and the Desktop user experience. This has resulted in more organizations choosing to build their applications using Web technologies, rather than using the traditional Desktop approach. In order to explore the evolution of this trend, InfoQ had an interview with Dylan Schieman, CEO of SitePen and co-creator of the Dojo Toolkit, about the potential of the Web platform.
InfoQ: Hi Dylan, would you like to give us an overview of the technologies you consider being part of the Web platform? Where exactly does the Dojo toolkit fit in?
Dojo still has many of the same goals today as when it started: to fill gaps in browser implementations, to make developers more productive, and to help you build efficient and well engineered web apps. That has evolved over the years, to cover all of the features above, and so much more. We've evolved to provide a collection of tools to efficiently manage CommonJS AMD packages, to a lean set of packages on top of this. We've just made so many improvements and changes with 1.6, and have a pretty incredible set of plans for 2011. It's by far the most ambitious year in our history.
InfoQ: How do you see these technologies currently being implemented and supported? What important APIs are already available and for what new technologies should we be waiting for?
InfoQ: What are the main benefits you believe that the web platform has over the traditional desktop technologies?
InfoQ: What types of application do you see more fitting for being implemented with web technologies and which technologies are those? How can the Dojo toolkit be used with those?
InfoQ: What do you think will be the main concerns for developers that would like to develop desktop solutions using web technologies? What about security?
Dylan: Most security problems today are still within the browser or server-side, as the assumption is that we don't trust web apps to be allowed to do too much. I've been reasonably amazed at how few major security issues have occurred over the years, and most of them were quickly squelched. I don't perceive the web platform as any less secure than the desktop platform, as I think it has less vectors for infection. That said, the breakthrough speed with recent advancements certainly opens the doors for a new class of potential problems.
InfoQ: Are there things that you think are currently missing from Web technologies, in order to be a viable alternative to current desktop solutions?
Dylan: I think if everything that's currently unfinished was suddenly done and highly performant, we'd still have work to do, but the discussion wouldn't be very interesting. I think the main focus has to be on how we can continue to rapidly evolve as we have been, and make it much easier to create applications with amazing performance. So I see it more a matter of polishing and finishing the many alpha and beta quality features and approaches that have emerged over the past 5 years as the main thing holding us back currently.
InfoQ: How do you see these APIs and technologies growing in the near future?
Dylan: I'm terrible at predicting the future, other than I recommend never betting against the open web in the medium and long term. I see them growing rapidly and being fiercely competitive to provide developers with exactly what they need to be amazingly productive on the web.
Is that so?
That would be a bet that's very hard to win. if you combine security models and in-app purchases (i.e. pay for content), I don't see what's left of the Web moving forward. HTTP? Even HTTP will be quickly replaced within 2 or so years, for a much more efficient protocol geared towards supporting native apps.
Re: Is that so?
Re: Is that so?
Re: Is that so?
Re: Is that so?
And of course, given that AJAX calls are asynchronous, that also means you don't have to deal with multi-threading and worry about locking up the UI with a network operation that takes to long if you don't put it in a separate thread.
From both an end user usability perspective and a developer productivity perspective, I think modern Web toolkits have the advantage over desktop toolkits.
Re: Is that so?
As for modern web UI toolkits being superior to desktop apps, as Panthera mentions, if the comparison is being made to WinForms or GTK or such, then you're talking about a generational gap - it's an irrelevant comparison. Try comparing a web toolkit to a WPF or Air app or a similar, current generation desktop toolkit.
Feeling like a fart in a bubblebath
What worries me is no one is standing back to look at what a mess the industry is at the moment. Organisations want to make a profit, developers want the latest gadgets, and the testers and users just want something that works and will still work after a update.
Both web and desktop have their place. Personally I prefer desktop because losing signal and paying crazy amounts of subscription fees for data bundles in 3rd world countries is quite frustrating. Desktop also have its fair share of frustrations such as threading, background applications interfering and security settings in organisations. All websites that do allow users to input information should cater for a API allowing desktop applications to interact as well.
My wish is that people start looking at the basics and that it'ss quickly testable(that include compatibility with test automation tools) instead of overwhelming fancy feature rich interfaces. This way, organisations get a quick ROI, develepors don't have to work endlessly on the same project, and testers can bother the developers less with issues and suggestions as well as actually achieve the desired test coverage with confidence. The only problem is what do we do with the support center staff(if they are not replaced by a electronic answer machine yet)?
HTML is the juggernaut of our time
Dominique De Vito
How Can We Use Our Creative Power and Technological Opportunity to Address the Challenges of the 21st Century?
Gyorgyi Galik Feb 26, 2015