Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Web of Tomorrow

elcuervo
October 19, 2012

The Web of Tomorrow

The web is changing and new changes are coming.

How will the new RFCs will affect the web as we know it?
What technologies will raise again?
Is Ruby prepared for this changes?

I want to answer these questions and talk about new web technologies and how we need to change to adapt to this upcoming era.

From web sockets to WebRTC.
From distributed to decentralised.

The storm is coming… are you ready?

elcuervo

October 19, 2012
Tweet

More Decks by elcuervo

Other Decks in Programming

Transcript

  1. MediaStreams PeerConnection DataChannels aka “let’s see that ugly face” aka

    “let them see that ugly face” aka “let’s share Game of Thrones”
  2. What is it? - Camera and/or mic access - MediaStreams

    are synchronized between MediaStreamTracks
  3. What is it? - Camera and/or mic access - MediaStreams

    are synchronized between MediaStreamTracks - Can be played in <audio> or <video> elements as objectURL
  4. client 1 app app HTTP Signaling (HTTP, SIP, XMPP, etc)

    HTTP Signaling (HTTP, SIP, XMPP, etc) client 2
  5. client 1 app app HTTP Signaling (HTTP, SIP, XMPP, etc)

    HTTP Signaling (HTTP, SIP, XMPP, etc) P2P client 2
  6. Local Session Description what is the local configuration? Remote Session

    Description what is the remote configuration? Remote Transport Candidates
  7. Local Session Description what is the local configuration? Remote Session

    Description what is the remote configuration? Remote Transport Candidates how to connect to the remote peer?
  8. Low Latency aka Fast and Furious High Throughput aka send

    ALL the messages Unreliable send aka possible loss (“Call me maybe”)
  9. var fn = function(event) { var message = event.data; ...

    } in.addEventListener("datachannel", fn);
  10. How about Ruby? - No WebRTC implementation available (yet) -

    Native C++ API (libjingle) - Multiple signaling options (goliath, websocket-rack, rack-stream)
  11. How about Ruby? - No WebRTC implementation available (yet) -

    Native C++ API (libjingle) - Multiple signaling options (goliath, websocket-rack, rack-stream) interested? ping me
  12. Not Free 28% Partially Free 43% Free 30% Woldwide Internet

    Freedom http://www.freedomhouse.org/sites/default/files/inline_images/FOTN%202012%20FINAL.pdf