Applications vs. Webapps

Started by
29 comments, last by Servant of the Lord 9 years, 11 months ago


To be fair though, most of those that seem most hairy are not inherent problems in the platform, but a question of having people with the right know-how.

Oh, I don't disagree that knowledge solves many of the problems. But with the fast pace of change on this front (no end in sight) and the fragmentation of front-end browser SDKs, once you become an expert... it's time to upgrade or change SDKs, time to get a new job (same thing), someone you're working with gets replaced, some new browser or platform comes along, etc. Learning curve and ease of use are important to me in a rapidly evolving and demanding environment, and most people over the age of 30 can't be bothered to spend all the time needed to stay an expert (hard to blame them).

Like I said, a standard browser helps quite a bit, but I can't help but think back to browser upgrades which have broken key components of web apps. Which (if it's your own product) may then require you to update your front end SDK... oh, and did you see the readme about how they recommend a new version of Eclipse and require a JDK update? And then we'll have to fix any new issues, re-test... oh is that a classloader conflict? *kills self* (I realize this is a contrived example, but these things do happen and the unplanned O&M surprises are not fun.)

I was focusing (above) on the negative issues since they seem rarely discussed. Or maybe I'm just a grinch.

But I agree that the issues are in no way insurmountable. They're solved all the time. A big issue I have is that they're solved all the time. Over and over again. :) Then again, maybe this is what keeps us all employed, so I should just shut up now...

Advertisement

As well as Webapps and Applications there are also Hybrid Apps such as iTunes or the Mac app store and many mobile apps.


- sandboxed (browser separates app and os)

Its still possible to access the users file system and allow the user to open files or save files.


- javascript

Most of the development of a web app can be done using a language such as Ruby, Python, PHP, SCala, Java etc. Javascript is only neccessary for the most basic glue that holds the web page together such as Ajax calls. Although Javascript is going through a renaisance at the moment so does seem to be the most popular. Even then it is possible to do all your Javascript without actually coding in Javascript. You can use Coffescript, Go, Clojure even C++ with emscription.


- can be slower than a native app

It can also be faster.


- requires internet access at all times (except if you do advanced stuff like html5 application cache)

Not always neccessary and also not really a con because if you do not require internet access you may as well write a non webapp.


- browser differences can make development difficult

Now this is the real downfall of webapps. And thanks to arguments between all the browser manufacturers one that will probably never go away. On the otherhand developing for different browsers is not as bad as for developing for different OSs naitively.

- browser differences can make development difficult


Now this is the real downfall of webapps. And thanks to arguments between all the browser manufacturers one that will probably never go away. On the otherhand developing for different browsers is not as bad as for developing for different OSs naitively.

It's also kind of overstated these days. Yes, browser compatibility was hell in the early 2000's, but IE 6 is fading, and libraries like jQuery have done a bang-up job of abstracting over the differences.

There is still a lag in the adoption of new tech (for example, WebGL), but that's only to be expected in a fragmented market (and no better in native, for the most part).

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

So thinking about the design of stuff (and I've ordered this: http://amzn.com/B00E257T6C) I think that deciding that it would be better in the web instead of an application was where I went wrong. If the UX was designed correctly, then it would let the user perform the task. It shouldn't matter if the app is a webpage, Java application, Android app, iPad/iPhone, whatever.

The fact that implementing the solution may be quicker/easier with a Java app or a webpage or a web 2.0 javascript doesn't really matter.

I think, therefore I am. I think? - "George Carlin"
My Website: Indie Game Programming

My Twitter: https://twitter.com/indieprogram

My Book: http://amzn.com/1305076532

So thinking about the design of stuff (and I've ordered this: http://amzn.com/B00E257T6C) I think that deciding that it would be better in the web instead of an application was where I went wrong. If the UX was designed correctly, then it would let the user perform the task. It shouldn't matter if the app is a webpage, Java application, Android app, iPad/iPhone, whatever.

The fact that implementing the solution may be quicker/easier with a Java app or a webpage or a web 2.0 javascript doesn't really matter.

Haven't read it myself, but have heard good things about Don't make me think from people who know about such things.

One key thing to remember is that you can't not have a user experience; you can only have a good UX or a bad UX.

if you think programming is like sex, you probably haven't done much of either.-------------- - capn_midnight

I won't speculate on what it'd look like, but if all this Internet junk were redesigned from the ground up (ditch HTTP, HTML, modern browsers, etc.) it would probably be very different.

I'm sure the aliens are all laughing at us now, saying "Look, these idiots still haven't figured out that you need to throw away the first prototype to design a proper Internet!"


I'm sure the aliens are all laughing at us now, saying "Look, these idiots still haven't figured out that you need to throw away the first prototype to design a proper Internet!"

Awesome! Every time I write a web page for something that's exactly what I think. We need a new internet browser that blurs the line between the OS, application, and web without ignoring security. Sounds easy enough. Maybe this time Microsoft won't embrace, extend, and extinguish it?

I think, therefore I am. I think? - "George Carlin"
My Website: Indie Game Programming

My Twitter: https://twitter.com/indieprogram

My Book: http://amzn.com/1305076532


I'm sure the aliens are all laughing at us now, saying "Look, these idiots still haven't figured out that you need to throw away the first prototype to design a proper Internet!"

Its not so much the internet that's fundamentally broken as how we access what we put on it. The infrastructure design has stood the test of time quite well. Politics and the commercial entities that control the last mile are really its biggest problem. HTTP, Atom, AJAX, JSon, REST seem to be quite capable as far as transmission goes too. Websockets add a persistent (per session) pipe between server and host, too, which is what the previous stable of protocols lacked. We're able to build on top of the internet to get to most of what we can imagine.

I think that if the internet were ever replaced in a truly fundamental way, that it would be replaced as a function of a much broader concept -- Something more along the lines of "The network is the computer: and every tool or piece of content that exists is just a thing that lives on it." Even then, an infrastructurally-evolved version of the lower layers of today's internet will probably live on as its backbone.

Or, maybe something more organic, like Ethereum.

throw table_exception("(? ???)? ? ???");

Or, maybe something more organic, like Ethereum.

Interesting. That's a cute concept, though I have some initial reservations.

Having spent a good bit of time in grad school studying peer-to-peer routing algorithms based on distributed hash tables, I have some expectation that the future of the internet is indeed more organic. If not for technical reasons, then for political (does anyone really think that corporate control of the internet is a good idea?).

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]


It's also kind of overstated these days. Yes, browser compatibility was hell in the early 2000's, but IE 6 is fading, and libraries like jQuery have done a bang-up job of abstracting over the differences.

If you do web dev today, may I ask whether (and how much) you do testing in x number of different browsers prior to a release or in response to a new browser release? Have you been forced to update a front-end SDK due to some technical issue recently? I'm just wondering what the norm is now - I know it was pretty lousy years ago. I don't think JS is JIT compiled in IE7 or IE8, though those are temporary problems.

Ethereum sounds interesting. I knew something like it was coming once I started to understand the tech behind it, but I thought it'd be years from now. Makes you wonder how much this standards-committee based approach (HTML5 etc.) is really holding back the pace of progress.

I also wish the guy who invented the term "web" much pain and suffering. I hate bugs spiders. biggrin.png

This topic is closed to new replies.

Advertisement