Skip to content

Discussion #1

Open
Open

Description

@thomasdavis

Couldn't find a place to actually talk about the concept.

I gave a talk on it at a local Javascript meet up last night.

http://thomasdavis.github.com/browser-node-slides/presentation.html#slide1

And here was a way of doing it in firefox https://github.com/thomasdavis/browser-node-slides/

Activity

  1. monteslu commented on Nov 6, 2012

    @monteslu
    Member

    Very cool slides, good to see someone else interested in this stuff :) This place is as good as any for discussion, or maybe here: https://plus.google.com/103067286453763274834/posts/5Aa8jPPmZjW ?

    edit: ooops, didn't mean to close the issue

  2. reopened this on Nov 6, 2012
  3. 525c1e21-bd67-4735-ac99-b4b0e5262290 commented on Nov 6, 2012

    @525c1e21-bd67-4735-ac99-b4b0e5262290

    This concept embodies how the web was created and how it will be destroyed. This is what networked platforms, their applications and their constituent modules once were and will be. Once the silos crumble; once the walled-gardens wilt; once the web 2.0 magical fairy pixie dust settles; modular, distributed, peer-centric systems are all that will remain.


    For the uninitiated:

    There's a long-running effort to augment browsers with the ability to facilitate "servers" (glorified transactors) in a similar fashion to how node augments v8.

    Of late, the chrome team has been applying the same principle to chromium itself via extensions, through the APIs they interface...

    As I understand it, all major vendors are participating in this initiative. In fact, Opera was so early (~ 6 years) they've since given up and started again, several times.

    We have embraced the concept and have discovered what is a rather splendid platform. The realisation of old solutions, sometimes decades old, to problems only now arising.


    Here's my humble advice to developers of this realm, including those targeting this project:

    1. Extrapolate the motif of using extensions deep into your apps and their dependencies. Extensions are more than capable of communicating with one-another, a design pattern I have learned to embrace. Utilising extensions forces one into the process of reasonable architecture and enforces isolation in the pursuit of stability and, above all else, security. This need not be difficult, and indeed has been rendered trivial by the layering of protocols (i.e. https://github.com/substack/dnode-protocol) over these message busses.
    2. Leverage the myriad of facilities chrome offers for what is otherwise browsing the internet; drawing parallels to classical server components. For example, use tabs for distinct server applications or independent components. Use chrome sync to keep server configs synced. Use chrome://memory and friends to audit cpu/memory usage. Use the inspector to debug, perhaps even develop, your modules. Abuse these aspects of the browser if need be. Go as far as patching the browser to burst through the glass ceilings. Don't be afraid of the positions collectivists will inevitably take against this movement. Let the whole world look in. "The power is yours".
    3. Don't everyone make a carbon copy of node. I share the sentiment of achieving API compatibility with node; if only for now. But realise node is a moving target you struggle to keep in your crosshairs. Instead, meet node where node aims itself. What you will begin to discover as you venture into this particular endeavour is that by standing on the shoulders of the browser giants, you're at least an order of magnitude more capable than when confined by classical SSJS platforms.

    I'd like to be part of the formalisation of these concepts into axioms; bundling it up and presenting it as "a thing"; coining a name, catchy tagline, flashy logo, fancy community site and all that jive. A portal, if you will, to projects of this nature.

    All feedback is greatly appreciated; particularly criticism :)


    @thomasdavis I woefully regret missing this particular BrisJS. How was their response to these ideas?

  4. thomasdavis commented on Nov 7, 2012

    @thomasdavis
    Author

    Thanks for the big juicy comment @pyrotechnick

    Been busy at the moment but I hope to get back to you with feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions