Online / 6 & 7 February 2021


WebRTC shouldn't be this hard!

How can we make WebRTC easier for the next generation? What happens if we don't teach it.

WebRTC shouldn't be this hard!

In 2020 we saw a huge spike in interest for RTC. Developers worked quickly to build new tools with the challenge of a socially distanced world. As new developers came on board the initial excitement turned into frustration with how difficult things can be. What makes it hard, and how can we make it easier?

  • Developers don't understand what WebRTC does, or how it works

    • Most materials are just for W3C API
    • Marketing made it confusing (Google's WebRTC Implementation == WebRTC), WebRTC as a protocol and an API.
  • Developers want tools in the language/ecosystem they feel comfortable with

    • C and C++ isn't the most read friendly languages
    • Memory and Security issues
    • Difficult to build/integrate into existing projects
  • Developers want support

    • Communities for specific products are strong (Jitsi, Janus, MediaSoup and GStreamer)
    • StackOverflow/discuss-webrtc
  • Developers feel ignored if use case is new

    • Teleoperation
    • IoT/Security Cameras
    • Filesharing
    • ....
  • How can we try and fix these things

  • WebRTC has lot's of implementations. We should embrace them!

    • aiortc (Python)
    • KVS WebRTC (mbedtls, targeted at embedded)
    • GStreamer's webrtcbin
    • Pion (Golang)
    • Shiguredo (Erlang)
    • |pipe| (Java)
    • rawrtc (C++)
    • webrtc-rs (Rust)
    • ?
  • Should we as a community make a interop testing tool to encourage new implementations?

  • Developers need tools to learn

    • WebRTC for the Curious (Vendor agnostic tool to teach how WebRTC works)
    • Pion Interceptors (Error Correction, Bandwidth Estimation and Stats made accessible)
    • Better tools (or just education) for debugging transport and media issues
  • We need supportive communities

    • video-dev has #webrtc (pretty dead)
    • Twitter seems to be the best place today? Not very newbie friendly
    • Starting a meetup that isn't commercial focused
    • We should encourage more individual ownership
  • Open Source Showcase! (A list of interesting Open Source projects that use WebRTC)