Course Information
Course Overview
How to make highly interactive and responsive applications using WebSockets and Go
WebSockets are a technology that allows developers to build highly interactive, extremely fast web applications. Since WebSockets are supported by all modern browsers, and have been for years now, there is no reason why they cannot be implemented on any modern web application. This course will show you how to work with WebSockets with Go.
We will work with two kinds of WebSocket technologies: first, with simple calls directly from our web application to all connected browsers, where all functionality is handled by our application. The web application we'll build is a simple chat application, which will allow users to chat back and forth, and will show the list of connected users, updated in real time.
Next, we'll take advantage of a Pusher compatible server (or Pusher itself, if you prefer) and use that server as a message broker between our web application and all connected clients.
I am a firm believer that learning how to use a particular technology works best when applying it to a real-world situation. All too often, tutorials and courses over simplify what they are trying to teach, and create an artificial environment where things are so simple that what is being taught looks easy enough, but you immediately run into problems when trying to implement it on a more complex project. So, to implement and learn about WebSockets and Pusher, we'll build a web application which monitors remote servers and hosts, and notifies us in real-time when a service goes down or comes back up again. We will send notifications in real time using WebSockets (which will update the appropriate content on the pages being viewed by all connected clients), by email, and, as a bonus, we'll also learn how to send notifications using text messages (SMS) with Twilio.
Course Content
- 8 section(s)
- 86 lecture(s)
- Section 1 Introduction & Setup
- Section 2 Our First Project: Chat
- Section 3 Project II: Vigilate, a server monitoring system
- Section 4 Setting up our Application
- Section 5 Monitoring Services
- Section 6 Implementing Websockets on Vigilate
- Section 7 Monitoring Additional Services
- Section 8 Writing Tests
What You’ll Learn
- How to work with Websockets in Go (Golang)
- How to build a real-time, responsive application using websockets
- How to connect to third party services like Pusher, and how to use our own self-hosted Pusher-compatible service
- How to build a real-time server monitoring web application
- How to schedule periodic events in Go
- How to write tests for websocket handlers
- The basics of building a secure web application in Go
- How to send SMS messages with Go using Twilio
Reviews
-
GGeorge Karkuzashvili
I see a title about creating highly interactive applications using WebSockets and Go. And I hear about a monitoring program that uses Pusher and how to set up some templates that I will never use. Why do I need this? Waste of time.
-
AA Someone
Course very outdated. The second project wasn't explained throughly. No in depth explanations about what is going on there and about the how and why the project structure is built the way it is. Very disappointing.
-
MMatthew M Stein
After taking a few of your courses on the Go programming language I have to say thanks. You make complex and complicated topics approachable and have the industry and academic experience to make it so each course adds to my backend engineering repertoire. I feel taking 4 of your courses partially, has really opened my eyes to what is possible with the Go programming language. This journey to be a Full Stack Developer is only possible because of you, so thank you a ton for teaching with enthusiasm.
-
RRajeshwer M
Good