Wednesday, October 29th, 2008

Web Sockets, Comet, and a Panel

Category: Comet

>Comet is starting to gain steam, although mainly through the term “real-time Web.” A couple of the Comet folks posted at the same time, both talking about the technology in different ways.

Ted Goddard answered a bunch of questions in WebSocket is neither Web nor Socket.

  • Does WebSocket use TCP ports 81 and 815?
  • How does WebSocket make use of an HTTP connection on port 80?
  • Does WebSocket obey the same origin policy?
  • Is WebSocket restricted to the two-connection limit of HTTP?
  • Can WebSocket read and write arbitrarily as with low-level socket APIs?
  • How does WebSocket delineate messages?
  • How are function call semantics implemented over WebSocket?
  • Is WebSocket easy to implement?
  • Can we just upgrade HTTP?

Michael Carter had a fun little spin on things in HTML5 WebSocket and WebJneering.

I want to tell you about HTML5, specifically about the advances in bi-directional, asynchronous communication. But I’m troubled. Consider two propositions that I didn’t come up with: 1) Nothing is new, 2) Everything Sucks. Let these simple truths cast a shadow upon the tale you are about to read…

HTML5 provides a new thing called a WebSocket. I’m pretty sad that its not a TCPSocket, but alas, it was easier to throw in a handshake for security than to set up some out-of-bound security method, such as flash’s cross-domain policy files. We can’t connect to existing TCP servers, so we’ll just have to start over and write new WS/TCP servers. No problem. WebSocket will still be our salvation, leading us towards our stateful future.

I was at first overjoyed at the prospect of the World Wide Web’s new status as a real boy. But such feelings were just a precursor to the greatest technology-driven depression of my life. You see, as recently as twenty years ago the world was brimming with real programmers, who knew how to do such amazing things as write programs that conversed with far-away computers by using bsd sockets. We’ve traded those programmers, by and large, for JavaScript kiddies. Its not that the real programmers all died, retired, or gave up with programming; rather, every new programmer of the past decade is a bright-eyed 22 year old who thinks he’s the best thing since Google, what with his domination of rails (, java, or php) and javascript.

Both Michael and Ted will be joining myself, Alex Russell, Dylan, John Fallows, and others at an event tonight in Mountain View covering Comet. If you are in town, join us!

We are using the Google Moderator to help answer questions you want heard, so
add your questions too.

Related Content:

  • GMaps4JSF with Ajax PUSH
    GMaps4JSF aims at integrating Google maps with JavaServer Faces (JSF). JSF users will be also able to construct complex street view panoramas and maps...

Posted by Dion Almaer at 10:18 am
11 Comments

+++--
3.4 rating from 17 votes

11 Comments »

Comments feed TrackBack URI

It’s a tricky business when you look for JavaScript programmers, separating real programmers from script kiddies.

Comment by Nosredna — October 29, 2008

“You see, as recently as twenty years ago the world was brimming with real programmers, who knew how to do such amazing things as write programs that conversed with far-away computers by using bsd sockets. We’ve traded those programmers, by and large, for JavaScript kiddies.”
.
So by that broken logic, things like these should not exist because JavaScript hackers are just “kiddies” right?
.
http://www.abrahamjoffe.com.au/ben/canvascape/
https://bugzilla.mozilla.org/show_bug.cgi?id=388195#c71
http://getfirebug.com/

Comment by TNO — October 29, 2008

>> So by that broken logic, things like these should not exist because JavaScript hackers are just “kiddies” right?

I think the point was more along the lines of “Most web developers nowadays don’t have a deep understanding of TCP sockets, HTTP and the lower level stuff that powers the internet” and that we’re now flooded with me-too js libraries that just add sugar and don’t really solve anything.

Comment by LeoHorie — October 29, 2008

Let’s be a little fair here – to both sides. Are there “JavaScript kiddies”? Yes. JavaScript has a pretty low barrier to entry and it was intended that way. Same with HTML. However, let’s be realistic. Nobody can hold the knowledge of all areas of programming in their minds. Younger people generally know less stuff. But also don’t forget the fact that many people knowing the ins and outs of sockets, couldn’t get a complicated design working cross-browser because they lack the knowledge of CSS and the familiarity with browser quirks to do so.
.
You can go pretty far without needing to know how to use sockets directly. 20 years ago that wasn’t the case. Now you need to know a lot of other stuff. Now you need to know the ins and outs of a variety of higher level frameworks. If every programmer out there created their own web servers to get things done, technology would be moving at a fraction of the pace it does now.
.
That said, there are many different kinds of programmers out there. Most of them could not write a web server. Seeing as there are a lot more web pages than web servers, though, I think that’s ok.

Comment by genericallyloud — October 29, 2008

Get off my lawn!

Comment by tlrobinson — October 29, 2008

“You see, as recently as twenty years ago the world was brimming with real programmers, who knew how to do such amazing things as write programs that conversed with far-away computers by using bsd sockets. We’ve traded those programmers, by and large, for JavaScript kiddies.”
.
Hahahahahahahahaha…!
ROFLMAO! :P
.
He pretty much nailed it there… ;)
.
The people whom have contributed most to SW development as a concept are people like Ada, Babbage, Stroustrup, Knuth, Turing, Liskov etc…
Still most “skilled JS developers” haven’t even heard of those people, but they have heard of John, Sam and Thomas (Aculous)… ;)
.
BUT!
Before you punch at me for harassing the “JS Rock Stars” you should realize that I think John, Sam and Thomas deserves a lot of respect for their work, and that they have done truly great and innovative things. But their work is like a tooth picker compared to the Amazonian Rain Forrest of Turing, Liskov and Knuth etc…
.
I bet even Thomas, John and Sam would be more than willing to confirm this themselves too … ;)
.
I guess what I am trying to say here is that the sad parts is that many JS developers thinks the “computing world” started in 2005, and while 18th of February 2005 *was* a HUGELY important date, we still did some pretty cool things before that too…
.
And unless we learn from History, History will teach us. (as in repeat…)
.
One thing is lack of knowledge, which is an honest thing and not something anyone can blame anyone for. Another thing (and far more dangerous) is to *not_know* you lack knowledge…!
As in believe one knows everything…
That’s *dangerous*…!
.
@TNO
Did you realize the amount of innovation which was really put into the original of that game…? [Wolfenstein]
Real-Time Raytracing, Binary Space Partitioning (BSP trees – which was actually an idea from a Meteorologist in the late 60s)
.
To see Wolfenstein implemented in Canvas truly makes me proud of being an Ajax Developer, and is one of my really proud moments in regards to being a std advocate. But the *original* piece of SW was a complete rewrite of SW history (an future)… ;)

Comment by ThomasHansen — October 29, 2008

Well Thomas, I guess that makes you a script kiddie since Ra-Ajax doesn’t measure up to the innovations of John Von Neumann…
.
But seriously, the logical fallacy here is that people are comparing decades of computing history and innovations to current mainstream innovations in an environment where people didn’t think it was possible. So that somehow justifies a stereotype about the type of people who learn and use the language? If I implemented the first Skein Hash in JavaScript, does that make me less innovative than a Commodore 64 Hacker who rendered a 3D cube?
.
No one can sit here and say that language X does not have Script/Code kiddies or that innovation A in Environment A is necessarily, or directly comparable to Innovation B in Environment B, its not an Apple to Apples argument. I can tell you this though, no language in history has the reach that JavaScript has right now. That means the number of people who use it, or claim to know how to use it is higher than any other language you can name, just do the math and count the brain dump and potential.

Comment by TNO — October 29, 2008

Most ‘real programmers’ suck at closer inspection. Fact Of Life.

Comment by Mikael Bergkvist — October 30, 2008

@TNO
I didn’t mean to reduce this discussion to “lesser” and “greater” programmers, my intention was to pinpoint that people should check out history…
This goes for non-programming arts too ;)

Comment by ThomasHansen — October 30, 2008

@Thomas: they’re different people solving different problems. Squeezing out productivity is a big deal for a lot of people, and js libraries thrive not because they solve mathematically complicated problems, but because they can cater to the users of the APIs better and faster.

Carter’s rant is more a matter of information overload and poor content filtering: it’s ridiculously easy to find help for Jquery, but try finding research for http streamed comet under Chrome in Linux.

Comment by LeoHorie — October 30, 2008

One thing to note is that there is no requirement that a httpd has to be run on port 80. You could, for example, set your RMI to run on port 80.

So you could have a launcher style regular website and an RMI/WebSockets/remote callback function site that provided server side connectivity.

In one of Microsoft’s .NET 3.0 scenarios, you actually use IIS as the callable client side socket — every PC would have to run its web server then.

Comment by jabailo — December 1, 2008

Leave a comment

You must be logged in to post a comment.