OpenAI, LLMs, WebRTC, voice bots and Programmable Video
Learn about WebRTC LLM and its applications. Discover how this technology can improve real-time communication using conversational AI.
Read MoreSo you’ve been learning WebRTC development for a while, did a WebRTC Tutorial or even not at all. You might have checked out AppRTC or took a piece of code from github and forked it, running your own server (yay!). But now you’re feeling stuck, unable to become a serious WebRTC developer.
WebRTC developers come in different shapes and sizes. They usually have one of two origin stories:
The challenge though is that WebRTC sits somewhere between these two very different disciplines that are VoIP and Web:
Me? I've got a VoIP developer origin story. I wrote my own static memory, no-recursion implementation of an ASN.1 PER encoder/decoder. Dealt with scaling linearly a UDP/TCP sockets implementation on different operating systems. Handled multi-threading in C code. Low level stuff that most developers today don't even grok. While these are great starting points, they don't really offer any way of making the transition to WebRTC.
This isn't about WebRTC. It is about understanding the different mindsets and approaches of developing VoIP products and developing Internet web applications. And it requires being able to learn new techniques and new ways of thinking.
While I won't take you through that journey here, I can help you formulate a plan. In this article, we'll explore together three things you can start doing today to make the jump from VoIP or Web to an experienced WebRTC developer.
The first thing you need to get a handle on is what you need to learn. Some might think that all you need to know to be a WebRTC developer is HTML, CSS, and a bit of JavaScript. Taking a github project that makes use of WebRTC, install and run it on your own. That's your WebRTC tutorial and you're ready!
While that is certainly a good start, developing with WebRTC isn’t as easy as just learning a bit of JavaScript. Or Node.js for that matter.
To really call yourself a WebRTC developer, you’ll need to get a handle on a wide range of topics:
With these skills and knowledge base in hand, you'll be able to create virtually any real time communications product. That might seem like a lot to learn, but I want to share some resources below that you can use to learn about each of these topics relatively quickly.
In addition, you don’t have to be an expert in every one of these topics, but as a WebRTC developer, you do need to have some basic familiarity with each and every one of these topics. I know I am not an expert in any of these...
Now that you know what you need to know, let’s look at the top three ways you can learn what you need to learn.
One of the best things you can do to grow in your knowledge about any topic is to read and follow along with posts and tutorials written by other experts in the industry. WebRTC is no different in this regard.
There aren't many WebRTC blogs out there, but you'll still want to focus to get maximum value here. Pick up just a few-quality blogs to follow. I try subscribing to ALL of them, mainly because it is my job to know as much as I can about the WebRTC market AND because I need to curate the WebRTC Weekly. What I do follow closely and make sure I read and understand when it comes to hard core WebRTC development amounts to just three main blogs:
Pick a few blogs that you want to follow and subscribe to them. You don’t have to read everything they publish, but make sure that on a regular basis you read technical articles that stretch and challenge your developer muscles. That's my approach here and I don't consider myself a developer anymore. You probably take the next step as well and open a code editor and try the code snippets that the articles you read publish.
Reading about WenRTC is ongoing maintenance that you must do to keep up-to-date - especially because WebRTC changes all the time and there's no solid specification out there just yet. To really develop new skills quickly some formal education is in order.
There are a couple of WebRTC Tutorials and online courses out there that you can find. Those that I've seen focus on the WebRTC APIs piece which is great to start with WebRTC. The challenge though is that WebRTC is still not standardized, so things change to quickly for such content to be kept up to date.
Out of these courses, I guess there are two places where you can learn extensively about WebRTC:
Other than WebRTC, make sure to look at other courses as well - things around fullstack web development or Node.js development courses at the likes of Udemy, Codecademy or Pluralsight. Make sure they're up to date if you take them (any WebRTC Tutorial that is 12 months back is old in WebRTC terms).
I have a nagging feeling that goes with me for a few months now.
There hasn't been any new book published about learning WebRTC development in over a year.
I believe June 2015 was the last time a new WebRTC book got published.
Now, if reading and learning from books is still a thing for you, then check out this roundup of WebRTC books - it is still valid today as it were then.
Oh - and make sure you read High Performance Browser Networking if you are doing anything with web browsers (and especially if you are planning on using WebRTC and cobble up your own signaling).
Reading about WebRTC development will keep you sharp. Studying WebRTC development will help you develop new skills and give you solid understanding of the technology. But to really grow as a developer you’ve got to find opportunities to put all of that education to good use and undergo a WebRTC Tutorial.
I can think of four different ways you can put your education to good use:
There's a paradox in our industry.
For one, WebRTC is stupidly simple (if you compare it to doing the same things before WebRTC). But at the same time, there aren't a lot of experienced developers out there that know how to use it.
Talk to employers who are looking for WebRTC skills and you'll see how hard it is to come by - most end up with using internal resources they grow into WebRTC developers - sometimes after a really bad experience with an external outsourcing vendor that knows how to build websites or mobile apps, but know nothing about WebRTC.
If you're ready to move past copy+paste implementations from github of Hello World WebRTC concepts and become a real WebRTC developer. However, if you're ready to mobe past implementation or hobby WebRTC Tutorial and become a real WebRTC developer all you need is a plan and the self-discipline to stick to it.
Your plan should include three core learning activities: reading, studying, and doing. Work on those three activities on a consistent basis and it won’t be long before you’ve left the hobby behind and grown into a WebRTC professional developer.
Not many blogs but there are a few I can recommend like webrtcHacks and Mozilla's Advancing WebRTC.
Learn more on the WebRTC Weekly which I curate together with Kranky to give you a pulse of what's happening with WebRTC.
You will find WebRTC courses on Udemy and a few other online courseware sites. The main problem with these is that they are outdated.
My own WebRTC Course is frequently updated and contains the most relevant information that keeps pace with the advancement of WebRTC and its ecosystem.
Learn about WebRTC LLM and its applications. Discover how this technology can improve real-time communication using conversational AI.
Read MoreGet your copy of my ebook on the top 7 video quality metrics and KPIs in WebRTC (below).
Read More