Hacker News new | past | comments | ask | show | jobs | submit login

While there are a couple of minor bits I agree with, overall I think Joe's off on this one.

The web has five organizations pushing really hard on it at this point (Mozilla [my employer], Google, Apple, Microsoft and Opera). The web almost had HP. We'll see what happens with WebOS.

The one part of his article that I somewhat agree with is that under the guidance of several entities (and lots and lots of people) the web may not have quite the same coherence as, say, Cocoa. I'm not sure that will be a problem.

"The Web has no one who can ensure that the platform acquires cutting edge capabilities in a timely manner (camera access, anyone?)."

Five years ago, even two years ago, would anyone even be questioning adding camera access to the web? I think there's been a huge shift in terms of how people view web technology.

gmail was the original "holy crap" app that started us building information apps with better user experiences. It proceeded from there to add things like canvas and svg and, more recently, webgl and audio, making apps well beyond "information apps" possible.

The "Boot to Gecko" (B2G) project which Mozilla kicked off a couple of months back is going to push quite firmly on adding all of the APIs needed for a modern mobile device. And, I might add, in conjunction with others in the standards bodies who are interested in such things.

And what about the Metro announcement from last week? Sure, Microsoft's ideal scenario is to build on the web and lock people into APIs that are tied to their platform... but, seriously, wouldn't people just write shims? Wouldn't Microsoft ultimately have to follow the standard because they are not quite the monopoly they were before?

The end of his post is telling:

"The closest thing we have to that today is Chromium, but they have no foothold in mobile and are likely years away from having one. And so I end on a sad note"

So, the crux of it would seem to be that Joe sees the world going mobile. I certainly agree. I got my start on a TRS-80 model III, and the stuff happening in mobile is the most exciting stuff I've seen in my entire career.

I've been working with the web for 16 years. There has never been a time in the past when so much effort was being put into pushing the web-as-a-platform forward. It's huge and I, for one, think the best is yet to come.




It didn't take a seer to imagine that having camera access was a good idea, but it takes a pretty boneheaded committee to wait this long to do it. Hell, Adobe put camera access in Flash years before iOS even existed. I don't love Flash, but even they benefitted from have a single owner.

Lots of good things coming to the platform now, but progress was even faster in the mid-90's when Netscape and IE were growing up. IE4 and IE5 in particular had a lot of great features that have since been forgotten, and are only now being reconsidered for standardization. Remember behaviors, image filters, CSS expressions, and data binding?


They had data binding? I don't remember that (that's a pet feature of mine ;)

From what I've seen, things don't really start in the committees. They start with people at browser vendors scratching their own itches and eventually escape out into the committees. In some ways, that's why it's good that there are 5 organizations pushing forward. One with an itch for camera access will help force the others to take action.

Data binding aside, I do remember the mid- to late-90s and I think the pace is faster now. Perhaps I'm biased since I work for a browser vendor... but I'm not actually a browser developer myself. I'm a web developer. And, I see interesting new capabilities popping up pretty rapidly.


Hell yeah, they had data binding in the 90's. Was ahead of its time, like XMLHttpRequest, but never caught on.

http://msdn.microsoft.com/en-us/library/ms531385(v=vs.85).as...


I realize that my reply didn't address the fact that camera access took a long time. You're right... I don't think it's because of a boneheaded committee, though. I'm just guessing, because I have nothing to do with this directly, but I'm guessing that people either:

1. weren't really thinking that the web needed camera access 2. thought there were higher priority things

And yes, Flash had camera access first. How's that working out for them relative to web technologies?


For years Flash held a dominate position on the web. Without Flash YouTube who knows how long it would have taken for something like YouTube to be created? That stagnation is a fundamental problem.


It gave us Chatroulette! :)


The one part of his article that I somewhat agree with is that under the guidance of several entities (and lots and lots of people) the web may not have quite the same coherence as, say, Cocoa. I'm not sure that will be a problem.

It's already a problem. In fact, it is the problem. The web application 'platform' is poor, incoherent, and its proponents highly resistant to the sweeping changes that would be necessary to compete with a native, proprietary platform like iOS.

The best chance the 'web' has for success is with projects like NaCL, but even that will only fix the execution environment -- we'll still need higher-level platform frameworks upon which applications can be built. Perhaps Google will supply usable application frameworks, as they've done (if poorly) with Android.

The browser makers (especially Mozilla) seem insistent on leaving us in the lurch, stuck with JavaScript, the DOM, and the painfully long lead times of standardization.


"It's already a problem. In fact, it is the problem. The web application 'platform' is poor, incoherent, and its proponents highly resistant to the sweeping changes that would be necessary to compete with a native, proprietary platform like iOS."

Which "sweeping changes" are those?

Changes like the ability to draw pixel-by-pixel? Vectors? 3D? (Canvas/svg/webgl)

Changes like higher level form controls? Got some in HTML5. New component model is under discussion now. Better layout of controls? The flexible box model helps a great deal, is already in lots of shipping browsers and is getting further cleaned up now.

Drag and drop? Yep.

How about the automatic data binding that's so cool in Cocoa? Not only are there application frameworks that do this (SproutCore, Knockout, Batman), there are also proposals like "Model Driven Views" (MDV) which use ECMAScript Harmony Proxy objects to make it cleaner.

What about files? Yeah, there are file APIs. Databases? localStorage is a simple key/value store. There's also WebSQL DB and IndexedDB which will hopefully be resolved in one way or another soon.

APIs for audio and geolocation are there now. Camera and other device APIs are in the works.

So, which sweeping changes do you mean? The ability to compile C code? Sorry, but I don't think most apps need that.

"The browser makers (especially Mozilla) seem insistent on leaving us in the lurch, stuck with JavaScript, the DOM, and the painfully long lead times of standardization."

I can't say this for sure, but I'd be willing to bet that:

a. standardization is moving faster than it has in more than a decade b. many APIs become usable in the real world well before the standards are complete

To be sure, the web-as-a-platform is not perfect today or in the future. But, its evolution is real.


Yeah, the checklist of web technologies is getting longer, but that's only part of the solution. They don't all work together very well. For example, Alex Russell has been opining recently about the way DOM interfaces are awkwardly adapted to JavaScript due to the committee's insistence on targetting IDL. That's why the W3C could never have invented jQuery.

I've been trying to duplicate native scrolling in iOS recently and I'm getting killed by details that the specifications don't cover and WebKit authors don't document. For example, tons of trial and error uncovered the fact that CSS keyframes animations are unusable for elements wider than 1024 pixels, due likely to OpenGL issues on iOS. If the W3C and WebKit had any clue how developers would actually use the stuff they design, they would have made this fact clear by at least providing a way to query the optimal texture size used under the covers.

Over and over you find little examples like this which demonstrate that the web's "leadership" is completely disconnected from reality on the ground.


come back to iOS man!!...lets make browsers that dynamically load objective C Code like HTML!


I just want to pick one illustrative example, because the other replies cover most of the ground:

What about files? Yeah, there are file APIs. Databases? localStorage is a simple key/value store. There's also WebSQL DB and IndexedDB which will hopefully be resolved in one way or another soon.

In native-land, we've had SQLite for over a decade. If I want "WebSQL DB" today, I simply link sqlite into my project and move on.

Before SQLite, we had bdb. When the next new thing I want to use comes along, I'll simply use it, and I won't have to wait around for standardization, and the for browser makers to wrap it up in a JavaScript API.


It's not enough to list the things that web does well. There are many areas in which web hasn't caught with capabilities available for a decade in Windows or Mac

Just one example that is particularly painful for me: it's still impossible to build a high quality code editing component on web platform. There are many valiant attempts but none that approaches the speed, quality and convenience of the best desktop editors from 10 years ago.

Another one: you can't build an ssh client as a web page because there is not enough socket support. You can do it by going through your own proxy, but that's not secure from the user point of view (you could spy on his traffic without the user knowing it).

Those are just two relatively simple things that you can't do on the web and there's much more.

Also, the velocity of change in the iOS/Android/Windows compared to velocity in web is not in favor of web. The (only recently added) capabilities you cite are just web catching up with old technologies. Amiga 1000 was doing excellent sound in 1985. Windows XP had vector graphics in 2001 etc. There's nothing to be proud of that we get those things in 2011.

iOS/Android/Windows/Mac OS X are being evolved much quickly than the web. They improve on the strengths they always had over web (speed of the apps, more capabilities, new paradigms like touch) and incorporate the best features of the web (integrating cloud storage in latest Mac OS and Windows etc.).

Also, the recent increase is standardization is caused mostly because the problem outline by Joe has been partially addressed: Google stepped up as the "owner" of the web and most of the recent advances are driven by Google (web sockets, spdy, webm, html5 spec being maintained by a Google employee, V8 forced everyone to raise JavaScript perf etc.).

Standard process was a disaster for a long time when it was done by W3C with working groups populated by employees of big companies with conflicting agendas. All the recent good changes originate from single companies (most of them from Google, Canvas was done by Apple).


> Just one example that is particularly painful for me: it's still impossible to build a high quality code editing component on web platform. There are many valiant attempts but none that approaches the speed, quality and convenience of the best desktop editors from 10 years ago.

Cloud9 and nide are really pretty competent editors, just because someone hasnt built the one application in a way that satisfies you does not mean the platform is dying.

> Another one: you can't build an ssh client as a web page because there is not enough socket support. You can do it by going through your own proxy, but that's not secure from the user point of view (you could spy on his traffic without the user knowing it).

CORS is supported in all modern browsers


Online IDE? Check out http://c9.io/




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: