$30 off During Our Annual Pro Sale. View Details »

Introducing Realtime - Node.js Dublin

Introducing Realtime - Node.js Dublin

A brief introduction to real-time web with no code, a bit of history and a.. actually, wait, there's no DeLorean's here...

miksago

July 02, 2012
Tweet

More Decks by miksago

Other Decks in Programming

Transcript

  1. Micheil Smith / @miksago
    Node.js Dublin / 28th June 2012
    Introducing
    Realtime

    View Slide

  2. Ask a question:
    https://twitter.com/miksago/status/207741122942992384

    View Slide

  3. Receive Answers:
    • Show the improvement in ‘experience’
    • Use examples: stock exchange, games,
    Facebook and iOS push noti ications
    • Just hammer the message into them

    View Slide

  4. An interesting answer:

    View Slide

  5. So, perhaps, the
    question is not
    the importance
    of realtime...

    View Slide

  6. ...but rather, what is
    realtime?

    View Slide

  7. View Slide

  8. First, a quick story

    View Slide

  9. It begins with this...

    View Slide

  10. 1892

    View Slide

  11. The story of the
    Acoustic Telegraph

    View Slide

  12. • Alexander Graham Bell & team
    • Invented between 1874 and 1876
    • Patent #174,465 issued 1876
    • Prior works: Telegraph, Postal
    Service

    View Slide

  13. 1886: Over 150, 000
    in the United States
    with telephones.

    View Slide

  14. This radically
    changed how we
    communicate.

    View Slide

  15. Now... back to the
    Real-time
    10:21:2015

    View Slide

  16. How do you define
    real-time?

    View Slide

  17. My definition: Real-
    time same or greater
    speed than by
    telephone.

    View Slide

  18. Enough definitions.
    Let’s talk about
    transport.

    View Slide

  19. WebSockets,
    WebSockets,
    WebSockets,
    Oh, and...
    Server-Sent Events,
    ...and...
    Long-polling ...and.... ...and...

    View Slide

  20. Firstly, Server-sent Events
    • Push-messaging from Server to Client
    • Very simple, text-based protocol
    • A W3C Standard
    • Wide-spread, uniform browser support
    http://www.w3.org/TR/eventsource/

    View Slide

  21. Secondly, WebSockets
    • Bidirectional messaging
    • Complex, yet powerful binary protocol
    • A W3C + IETF Standard
    • Wide-spread browser support, but
    varying incompatible historic versions
    http://www.w3.org/TR/websockets/

    View Slide

  22. Thirdly? Well, let’s
    forget about those...

    View Slide

  23. ...unless you’re:
    Socket.IO, Faye, or
    Sockjs

    View Slide

  24. The drawbacks
    or
    Even if your intentions are good, it can
    backfire drastically!

    View Slide

  25. • Di icult to scale & manage
    • Shift in development patterns
    • Known as being “risky”
    • Cloud hosting providers aren’t
    always up with support

    View Slide

  26. The wins
    or
    Whoa! Rock 'n' Roll.

    View Slide

  27. • Greatly enhances user engagement
    • Enables richer, faster applications
    • Backed by “big players”
    • The “next big thing”?

    View Slide

  28. View Slide

  29. If my calculations are
    correct, when this
    baby hits eighty-eight
    miles an hour, you're
    going to see some
    serious shit.

    View Slide

  30. View Slide

  31. Oh, by the way, I
    work for State
    And we’re hiring.

    View Slide

  32. Thanks for listening!
    @miksago
    on
    Geekli.st / Github / Twitter / State
    aka, everything.

    View Slide