Finding a good WebRTC course is tricky. Finding a training program that teaches you more than the basics about WebRTC isn’t simple. Here are a few questions to guide you in finding that course you want.
First off – I am biased. I have created a WebRTC training and have been running it successfully for a couple of years now, teaching IT workers about WebRTC. I’ll try to be as objective as possible in this article. The main thing I ask of you? Do your own research, and feel free to use my questions below as a guide to your quest after the best WebRTC training course.
Without much ado, here are the 6 questions you need to ask yourself about the WebRTC training you are planning to enroll to:
1. What was the last date the WebRTC course was updated?
This is probably the most important question to ask.
WebRTC is a moving target. Ever changing.
There are 3 separate axes that need to be tackled when learning WebRTC:
The standard is still changing. WebRTC 1.0 will hopefully be completed this year. The changes are minor, but they still occur. And once they are over, we will start talking about WebRTC NV – the Next Version of WebRTC. Which will inject new learnings around WebRTC.
Browsers are changing. Especially Chrome. But not only. They have their own implementations of WebRTC, slightly different than the standard. And they are crawling ever so slowly towards being spec-compliant. On top of that, they have their own features, nuances and experiments going on; of things that might or might not end up as part of WebRTC.
The Ecosystem around WebRTC is what you should really be interested in. Not many developers use WebRTC directly. Most use third party open source or commercial frameworks so they see less of the WebRTC API surface itself. Selecting which framework to use, and how they are going to affect your architecture and future growth is the hard part.
All this boils down to this:
👉 If the WebRTC training you are going to enroll in is more than 6-12 months old, it isn’t going to help you that much.
2. Does it cover more than the WebRTC API surface?
WebRTC is multidisciplinary. It spans across different concepts, and is a lot more than just the APIs the browser publishes.
How is the course you’re planning to take tackling that?
While many of the WebRTC courses focus on the API surface, they fail to understand the reality of WebRTC: Most WebRTC developers don’t interact directly with WebRTC APIs, but rather use third parties – either in the form of open source or commercial frameworks for signaling and media servers; or in the form of full managed services (think TokBox or Twilio). In such cases, it is critical for the students to understand and grok WebRTC from a perspective of the whole architecture and less so in what each and every API in WebRTC does (something that may change from one Chrome release to another).
Things you’ll need covered in order to write a decent application that is production ready:
- WebRTC APIs
- NAT traversal (STUN, TURN, ICE)
- Signaling and transport
- Codecs – both voice and video, and not only spelling them out
- Media processing – things like echo cancellation, noise suppression, packet loss, simulcast, etc.
- Media architectures – mesh, routing and mixing
Then there’s the part of how you boil it down to an actual solution. What components to use and why.
WebRTC has a set of building blocks, but you need to know which ones to use to fit the specific model you want to operate.
An interesting tidbit to check – does the training include aspects of group sessions or broadcasting? These require a look beyond the basics of WebRTC API calls.
👉 Make sure the WebRTC course you take isn’t too focused on the APIs and isn’t too focused on the standard specification.
3. Is the instructor who created that WebRTC training available for questions?
Assume that WebRTC is going to be challenging to grok.
And with an online course you are mostly on your own. Unless there’s a bigger framework at play.
Here are a few things that can help you out:
- Someone to ask. Does the course offer someone you can ask questions?
- Do you ask them over an online form? An esoteric email address?
- Is there a chat widget you can use to reach out to the instructor whenever you need?
- What about office hours? Can you join live to a session and ask questions in person, and with your own voice?
- Does the course offer a place for students to share their experience? Like a forum. Or a place where updates about WebRTC are published? (and we know things get updated pretty regularly there)
And one last thing – do you even know who the instructor is?
👉 An important part in learning WebRTC is the ability to ask questions interactively. Make sure that is part of the training you enroll in.
4. How long is the course?
An hour? Two hours? Four hours?
More doesn’t always mean better, but with WebRTC here’s the thing – there’s quite a lot of ground to cover. And there are three ways to do that:
- Run fast, skimming over the material; the student will fill out the rest by searching the internet later
- Focus on the basics, leave a lot of the meaty, important parts out of the course; the student can figure it out on his own
- Put the time into it, making sure to cover as much as possible in the course itself
That third option means that a WebRTC course, at least a decent one, should take more than a full day of training – well above 10 hours of information.
👉 If you want to really learn WebRTC, make sure the course you take has enough hours in it to give you the knowledge you need.
5. What are students saying about the course?
Do people like the course? Do they feel it got them what they needed?
Look at the testimonials of the WebRTC courses: you will immediately notice the frustration of students with the freshness of the courses – most of them are 3-5 years old. This makes them useless. Interestingly, students are less worried about the price (these are cheap courses) – they are a lot more worried about the time they wasted.
Check what companies are sending their employees to take that course. Are they just sampling it out, or sending multiple employees? What do these employees have to say about the course after taking it?
You will be able to find many answers to the other questions here just by reading the reviews of students.
👉 If you are going to invest your time on an online WebRTC training, make sure to read testimonials and reviews about that training.
6. Is the course suitable for your purpose?
Just need to understand in broad strokes what WebRTC is and what it does? Are you after a deep understanding of WebRTC and how to develop or test it properly? What about offering support or ops for a WebRTC application?
Each of these has a different set of needs. Each needs a view of WebRTC from a different angle.
Which angle do you need and how well does it align with the angle of that course you are looking at?
👉 Make sure the WebRTC course is aligned (as much as possible) with the type of work you’re expected to do.
Looking for a WebRTC course? Ask yourself:
A good WebRTC training should include information about WebRTC APIs, STUN/TURN servers, media servers (SFU, MCU), signaling servers and the state of the ecosystem and browser support.
A course focusing only on the WebRTC API or showing how a specific simple “hello world” application works won’t suffice.
Ask yourself the following questions about the course to understand if it is for you:
* What was the last date the WebRTC course was updated?
* Does it cover more than the WebRTC API surface?
* Is the instructor who created that WebRTC training available for questions?
* How long is the course?
* What are students saying about the course?
* Is the course suitable for your purpose?
Yes. Some courses are targeted more towards developers while others focus on ops and support.
If you are looking for a WebRTC course, be sure to check that the course is aligned with your job description.
Pick the right WebRTC training for you
There are several WebRTC training courses out there. Be sure to sift through them and find the one that is most suitable for you.
Interested? check out my own WebRTC courses:
- WebRTC basics – a free beginners course for those needing a bird’s eye view of WebRTC
- Advanced WebRTC – for those who deal with development – engineers, testers, architects and product managers
- Supporting WebRTC – a course focused on those in support positions