Comet’s Disappointing Mindshare

by Michael CarterJanuary 8th, 2008

In November I traveled with my partners to Cambridge, MA to interview with Paul Graham and cohorts to receive funding from his venture firm, known as Y Combinator. Our main proposal comprised some cool Comet widget prototypes with which we wanted to create a company to produce them on a mass scale. We were ultimately not given funding, probably because our proposal seemed to be “Look at this cool new technology that will transform the web. We’re experts on it.” rather than “Here is exactly what we want to make and precisely how we’ll make money.”

We’d never interviewed for funding before and it was a good experience. But I was absolutely shocked by some of the dialogue in the interview, particularly because it indicates just how out of touch I am with the mainstream internet tech community. In particular, in regards to Comet, Paul said, “Yes, I’ve heard that term before. I don’t know what it is.” I explained that Comet is a technology that allows for asynchronous, bi-directional, real-time communication between the web browser and server. He asked, “But aren’t all websites real-time?” After I described in brief exactly what Comet was and how it enables real-time, server-push communication without the need for Flash, he asked “What’s wrong with Flash? Most of our startups use Flash.”

Let me put this in perspective. Paul Graham reads hundreds, probably thousands, of startup proposals every year. He, more than anyone else, has a clear idea of the full range of emerging technologies being employed by tech-savvy startups. And he has no idea what Comet is, or that all websites aren’t “real-time.” Either Paul Graham is very bad at his job, or more likely, I suspect, this community has a depressingly small mindshare.

Since that interview, Comet Daily has started publishing an article every day. This is a great step forward. Now we need to post every relevant article to Hacker News, Programming Reddit, Slashdot, and any other news site where emerging technologies can gain high exposure. It’s not Paul’s fault that he doesn’t know about Comet—he basically knows what is presented to him. It’s our job to educate.

Along those lines, we need a particularly good explanation as to why Comet outside the context of Flash is a good idea. I’ll start that discussion: Flash is proprietary, doesn’t comply with any open standard, and developers are at the mercy of Adobe if they use it. My web browser goes about ten times slower when I visit sites that use Flash. And real-time applications that use Flash don’t work on all portable devices and won’t always work behind firewalls.

25 Responses to “Comet’s Disappointing Mindshare”

  1. Robert Says:

    I hope you found Cambridge, MA to be a nice place anyways, as I live here and it’s nice :)
    I just started a JavaScript Meetup group, the only one in Boston. We’ll be having our first meetup on Wednesday and I’ll have to see how many of the folks who show up know what comet is.

    I, as I’m sure many others have, had the idea for the concepts behind comet (a persistent connection being held open, receiving flushed script commands) before I discovered that there is not only a movement behind the concept, but that it has a name, comet.

    I had been thinking about what sort of JavaScript game to do and realized that in order for it to be multiplayer I would need to store the logic and game state server side and that polling from the browser would not be fast enough.

    I was excited to discover this website, it’s articles, and that a lot of per browser implementation gotchas had been mostly figured out already.

    I didn’t choose Comet for my first JavaScript web game (http://worldofsolitaire.com) because it’s primarily a single player game and I didn’t require comet.

    However more and more I’m fairly certain that my next JavaScript game will certainly need it.

    Choosing an existing comet technology or doing my own however… that’s another post altogether :)

  2. Anup Says:

    Interesting post. Some very quick thoughts:

    “Upgrades” for security or new features are somewhat seamless — or certainly does not require a user upgrade of Flash; it requires the company with the website to provide the updates in the client side html/javascript and the comet stuff.

    To a small extent (maybe large on the number of firefox users) is the use of ad and flash blockers.

  3. jherber Says:

    there is some fud in your rant.

    the actionscript language, as3, is based on open standards (ECMA-262).

    haxe (open source) can compile actionscript (flash) code, producing a swf.
    adobe gives away sdk, including all flash libraries.

    the flash vm is adobe proprietary, but interestingly, they have provided most of that technology to mozilla http://www.mozilla.org/projects/tamarin/faq.html.

    so, it is hard to make the case that flash is totally proprietary. certainly, the player technology has not been duplicated, but the tool chain has.

    flash9 benches 10x faster than flash8 (now a JIT engine), and i understand your case that it was slow *pre* flash9. would you call this slow: http://theflashblog.com/?p=306 (click on spiral to run).

    my handheld n800 runs most flash9 sites perfect btw (youtube, deezer). yet the prototype/scriptaculous demos in opera ported browser were really flaky. and, i highly doubt all mobile devices fully support comet.

    i would make the case that flash is coming to handhelds, strikes a good-enough balance for most developers in terms of open-ness, and is plenty fast.

    anywho, thanks for sharing your trip to y combinator with us.

  4. Shimon Rura Says:

    I’m a developer working on a new app that uses comet extensively. As cool as the technology is, and as important as it is for us to educate programmers about it, that’s not what’ll sell the technology to a larger audience. Your responses to pg’s flash question, while accurate and compelling for a techie like me, aren’t going to convince many people to change their normal app usage patterns. What you need is the comet analogue of ajax’s google maps, and saying “we’ll create a whole bunch of cool widgets with this technology stack” dismisses how freaking difficult inventing that is.

    The goal is not to be a factory for widgets, but to build one thing that’s so great people will go far out of their way to use it. If you read the tech blogs you might get the impression that we simply need a lot more chat clients with clever implementation techniques. But go do a survey of people, even smart people with fancy computers, and how many of them do you think will be excited by a chat client? I speak with the acquired bitterness of someone who’s learned this lesson the hard way, by building a product that nobody wanted to use.

    The challenge here isn’t going to be solved by more blogging, at least not directly. The challenge will be solved when someone makes an app (whether a widget, website, or something else altogether) that leverages comet into doing something really amazing. A better dialogue. A more interactive web analytics system. An easier budgeting or investment interface. A game that’s more fun on more devices. Something else we haven’t imagined. Then we’ll be able to point at it and say “comet is what powers foo” and there’ll be all sorts of idiots putting comet on their resumes.

    Furthermore, when you look at it in terms of concrete apps you could build, flash is a very serious competitor - the user-visible advantages of comet come down to things like loading speed and ability to modify any element in the page instead of just within a flash rendering box. These may be significant advantages, but it’s not obvious, to me or apparently to pg, how to turn that technology into a wonderful app. If it’s obvious to you, and you can learn to explain it, I bet you’ll have no trouble getting funded.

    Shimon Rura
    shimon@rura.org

  5. DylanSchiemann Says:

    Shimon, I agree, we also need the killer Comet app. There are a few contenders:

    Chat: Meebo, GMail Talk, Financial Times Alphaville, etc.
    Stock Quotes: Systems powered by Lightstreamer, Caplin, and TIBCO.
    News Aggregation: KnowNow
    Event Coordination: Renkoo

  6. Tony Wright Says:

    (disclosure: We’re a YC08 company– and I think we met you at the “Miracle of Science” bar… Hey!)

    “We were ultimately not given funding, probably because our proposal seemed to be “Look at this cool new technology that will transform the web. We’re experts on it.” rather than “Here is exactly what we want to make and precisely how we’ll make money.””

    I think you’re wrong there. IMO, this stage of funding isn’t about revenue or what “you want to make”, it’s about value (especially with YC). The key is to find a problem/discomfort that is either acute or widespread (preferably both) and to build a product around it.

    Comet is not a product, near as I can tell. It doesn’t solve a problem for PEOPLE (unless you count hackers! :-) ). It’s a technology looking for a problem.

    On the “Why is Flash bad” discussion– I think you should focus on the users. Users don’t care if it’s proprietary. They don’t care if it’s open. They DO care if it’s slow, but I don’t think speed for Flash stuff is too painful right now (is there really an acute problem to solve?). I’d say MOST of them don’t care about mobile devices (and I personally think that Flash is ubiquitous enough that support for it on mobile devices will be pretty widespread soon enough).

    (note: this is me talking without being familiar with Comet– am I missing something?)

  7. Mike Christoff Says:

    Tony, I am familiar with comet, and you’re still right. Comet is a technology looking for a problem. Google (chat in gmail), meebo, jotspot (now google), and some others have found great uses for it. BUT the point is, find a compelling use case (like in browser chat) and work from there. The financial community has certainly found a compelling use case for Comet. Besides the companies mentioned, the greatest advances are coming from companies doing business with wall street. Too bad they don’t share them…

    As for flash, it’s getting pretty good. Open is not always better for the same reason many of us use OS X, instead of linux. If you’ve noticed even Google implemented the new multi-user chat in flash. This says a lot.

    Disclosure: I’m also an 08′ YC founder.

  8. J Lane Says:

    I agree with Tony Wright for certain parts. A lot of people won’t see the downside to the argument of “it’s proprietary”. .NET is proprietary, but a lot of people use it for development.

    Like one perspective is that Flash sucks because it’s slow, and because Adobe owns it, they could make the decision to start charging everyone to use Flash Player. Then Flash will die off, and the product will need to be re-engineered. It’s also an accessibility nightmare, horrible for search-ability and slow/non-existent on a number of platforms.

    But yeah, you can’t sell a technology, you need to sell a product. Comet sounds like something similar to AJAX. I couldn’t walk into YC and say “Hey Paul. I have no idea what I want to build, but it’s going to be cool, and will definitely use AJAX. How about some money?”

  9. Rafael Says:

    I believe there’s a gap between what YC claims their looking for, and what they end up funding.
    Form their point of view, is absolutely logical. They want to focus on what the know, but without loosing the opportunity of finding the next google.
    In the end, is our responsibility to apply with our startups to the proper investors, but maybe we expected something else from PG and YC.

  10. bayareaguy Says:

    Have you considered using Comet to keep browser-side databases (e.g. http://wiki.mozilla.org/Mozilla2:Unified_Storage ) fresh?

  11. Jose M. Arranz Says:

    Mike Christoff Says: Tony, I am familiar with comet, and you’re still right. Comet is a technology looking for a problem.

    Mike, Comet = real time web with a smart bandwidth use. AJAX and Comet are the “natural” improvement or evolution of millions of web pages/applications.

    There are tons of applications, for instance, your favorite (web based) newspaper usually is refreshed with a timer, this timer does a FULL RELOAD, with Comet only changed parts (for instance new headlines) will be reloaded, a very big bandwidth saving.

    Are you looking for a “killer application” of Comet: try automatic remote view/control of another user/page using Comet

    Another one: functional web testing using server-sent events (a new Comet based technology).

    I think Comet opens a new world of real-time, server controlled (server-push) web applications.

  12. Nathan de Vries Says:

    Wow. You did the equivalent of walking into a meeting 2 years ago and trying to pitch “AJAX”. What the hell did you want YC to “incubate”?

  13. Mike McNally Says:

    JHerber - well I clicked on that link, and guess what? It doesn’t work! It seems I don’t have the plugin. Why’s that? Well, it’s because there isn’t one for my platform. Adobe hasn’t seen fit to bother to recompile and test the Flash player for 64-bit Linux. Yes, I could go through some convoluted process to get a 32-bit version to work with Firefox, *maybe*, but why should I bother?

    Flash is proprietary. No amount of “gee it’s almost not proprietary” apologetics can change that. It’s proprietary precisely because Adobe desires to profit from owning critical aspects of the technology.

  14. Sam Says:

    > he (Paul) asked “What’s wrong with Flash? Most of our startups use Flash.”

    Paul is a smart guy, and he likely could write an extensive article on what is wrong with Flash. He knew the answer. He didn’t need to be convinced. He was interviewing YOU.

    He needed to know if YOU had a clear succinct answer to give the dozens of suits, marketroids, and non-techies that would need to be not just convinced but thrilled at the news of tech that would make them rich.

  15. dd Says:

    i’m having the same issue that paul and others are having… until i actually reread your posting and the wikipedia article on comet.

    now i realize you have nothing to do with comet! you are/were pitching some widgets, that happen to use a method of using http channels in a way that is called ‘comet’.

    imo, the talk was blown because it got distracted with comet technology, instead of focusing on the business of your widgets or future widgets you could build.

  16. George Scott Says:

    You got into the interview which is further then most of us.

  17. Zaid Says:

    As several posters have stated, you seemed to have pitched an open technology rather than your idea of widgets.

    Almost all YC teams at any given time are playing with new technologies. Point is, the end goal usually isn’t AJAX or Comet; it is to solve a problem.

    Who are your users and what problem are you solving for them? If you can answer that without referencing Comet it might help us all understand your idea.

    Good luck!

  18. Mike Christoff Says:

    Jose, you completely missed the point. I have no doubt there are plenty of great applications for comet, but users have NO IDEA what a comet application is. Zaid, Tony and others are absolutely right. Technology is how you solve problems. Users don’t give a shit of your usings ajax, comet, flash, or cobol. They care that it solves a problem they have.

    The bandwidth point is valid, but bandwidth is getting cheaper as the days go on. Particularly when you compare the cost of polling for a text message every second to streaming a video on youtube. What you save in bandwidth, you lose in increased server-side complexity.. Leaving all of those connections open certainly presents a problem that AJAX does not have.

    The point is, there are good applications for comet. There are also a lot of good applications for flash, ajax, and a million other technologies. Since you know a lot about comet, what you need now is an appropriate problem to solve. Don’t sell me a nail gun to hang my pictures. My hammer works just fine.

  19. Jose M. Arranz Says:

    Mike, the key of Comet is “real time” (bandwidth saving is a collateral benefit) and there is no very much real time applications done with web technologies out there, the current web is basically user-pull (client-pull) based. Comet is a way to improve tons of user-pull applications to server-push when appropriate.

    I can imagine you are thinking about what problems/new uses for *end users* can be solved with Comet, I’m talking about technology, we can encounter in the middle :)

    For instance “automatic remote view/control of another user/page using Comet” can be used to:

    1) Help desk of web applications: an agent of your bank (for instance) can see what are you seeing and doing on your browser.
    2) Real time web based teaching: the teacher changes the “web slide” and automatically this new web slide is showed to any connected student.
    3) Web based shows: any generalization of the previous use.
    4) Legal spying: to detect suspect behavior of a web user and visually monitoring his/her actions.
    5) Real time web based collaboration

    I’m sure anyone can add more uses, I’m only a narrow mind technologist :)

    Note: “automatic remote view/control of another user/page using Comet” is a feature of a concrete web framework (ItsNat) is not an “out of the box” feature of Comet. Current implementation of ItsNat only supports a very limited “remote control” a next version will support “full remote control”. “Real time web based collaboration” is not possible at this moment “out of the box” (is possible with a bit work using Comet), when the full remote control feature is implemented two or more users could share the same “web page” automatically, any action over the page by any user is propagated to any other connected user. Of course these features are *only* possible with Comet (AJAX timer or AJAX based long polling flavours).

  20. MH Says:

    I agree entirely with Sam. With only the information revealed in your post, I think it was a mistake to take PG’s comments at face value.

    Of the examples given — about not knowing what Comet is, about websites being “in real time,” and about the limitations of flash — all sound exactly like questions designed to give you and your team a chance to show off your dazzling marketing pitch — your explanations of why these technologies are truly important and how your team is going to make use of them to start a new (high-promise) company.

    He was not revealing personal ignorance, he was giving you a chance to explain yourselves in a compelling manner.

    Of course, this doesn’t mean that the main point of your post is wrong. The PG interview was just an example used to prove a larger point, which may very well be spot-on.

  21. Charles Darke Says:

    Have to agree with the VC. You can write a custom server/client which will have excellent performance.

    If you need to work in a browser, then you can use plugins such as flash.

    So, what cases do you have where you must have a browser based client but cannot use flash. There must be very few, especially given the penetration of flash.

  22. Comet Daily » Blog Archive » Canonical Comet Apps Says:

    [...] Michael Carter’s recent post Comet’s Disappointing Mindshare, he argued that Comet has very limited mainstream exposure. But while the average person may not [...]

  23. Jonathan Boutelle Says:

    The reason not to use Flash is “we need to run on port 80 so we won’t be blocked by corporate firewalls”. Right?

  24. Comet Daily » Blog Archive » Interview with Kaazing Says:

    [...] Dylan: That reminds me of our Comet mindshare article. [...]

  25. Comet Daily » Blog Archive » Calling All Case Studies Says:

    [...] a follow-up to Michael Carter’s post a few months ago and a recent discussion with Greg Wilkins, I’d like to kick-off a a call for Comet case [...]


Copyright 2015 Comet Daily, LLC. All Rights Reserved