
Before you start that course, you should know some things in Python to follow me, and code in Twisted. Here are these things:
Python basics
OOP(Object-oriented programming in Python)
In that lecture, I will show you the tools I will use during that course. You can use different applications to help you, but I will demonstrate and narrate everything in these programs.
That lecture will show you how to download Twisted Framework. You can find Twisted Framework on PyPi here in the attachments.
In that lecture, you will know how Twisted works.
Twisted uses the AsyncIO framework.
When we open the client(app, website), we create Protocol using ClientFactory.
When we connect to the server from the client, ServerFactory creates protocol.
One protocol works with one user only, and protocols can send and receive data.
This video will help you to understand the basics of TCP protocol, and how we will use it in Twisted.
This video will help you to understand the basics of UDP protocol, and how we will use it in Twisted.
That lecture tells you about TCP Protocol on the server-side. It helps you to understand how to send data and receive data using Protocol in Twisted.
This lecture helps you to understand how to create TCP Server Factory that creates Server Protocols in Twisted.
In that lecture, you will see how to start your Server, and I will test it using the telnet feature in Windows. We cannot fully work with a Server without a Client, so go to the next lecture to make one!
This lecture will show you how to create Client Protocol in Twisted. It will use a TCP connection and will be able to send and receive data from the Server!
In that lecture, we created the most simple ClientFactory for the Client we wrote in the previous video. Now, we can spawn new Clients once they connected to the Server!
In that video, I will talk about TCP connections and how we can use real IP addresses. Also, I will show another method of Endpoint creation.
In that lecture, you will understand the LineReceiver Protocol in Twisted. I will also tell you about raw mode and line mode, max length, and delimiter inside of it.
In that lecture, we will start making our Twisted TCP Chat. We will create a server. It will send messages to everyone, so we kind of wrote the group chat :)
In that lecture, I will show how to make a client for our Twisted TCP Chat. Also, I will test our program. You should go to the coding task to improve our TCP Chat.
In that lecture, we will create the Client that sends the photo and the Server that receives that photo. You will understand how to upload images and use them with Twisted!
In that lecture, you will know how to create UDP Clients in Twisted and the main differences between UDP and TCP in that Framework.
In this lecture, I will write the UDP Server. There are no Servers - there are clients that act as servers. I will explain why do we need those in here.
In this lecture, I will explain about multicast in Twisted UDP. I will show how we can use it and what potential it has.
Well, yes, we can connect clients. But only to make our lives easier when we use Twisted! We will not have sustainable connections anyway, so watch that lecture to understand why do we need to connect clients and how to do that.
In that lecture, you will understand how to connect and write Producers and Consumers using UDP in Twisted.
In this lecture, we will install PyAudio for our Audio Chat. I will talk about Streams and how PyAudio uses them.
In that video, we will finish our Audio Chat. Now, we can send audio data and hear it from another user. I will also test it, and since I am on the one computer, you will hear an echo.
In this lecture, we will write a UDP Server for Peer-to-peer chat(P2P). We need it to find the IP addresses of other clients and show all the users online.
In this lecture, we will start writing our Peer-to-Peer Client. It will be able to connect to the Server and get all the addresses of other Clients.
This part will show you how to send the information using Peer-to-Peer Clients. Now, we are ready, but maybe there are some bugs??? Go to the next video to find it out.
In that lecture, we will test and finish our Peer-to-Peer Chat. We had some bugs, but now, they are gone. We can find clients, connect to them, and chat!
In that lecture, you will know about Deferreds. They are helpful in Twisted development, and I will show how we can work with the simplest Deferreds in Twisted!
In that lecture, we will talk more about Deferreds. I will introduce multiple callbacks and errbacks to you. Also, I will show the chain of callbacks and errbacks together!
In that lecture, I will explain threads to you. Also, I will talk on why you should not use them if you can, and I will show you the one problem that might have already happened to you.
After that lecture, you will understand what is Threading Pool and what are the limitations of Twisted threading. Also, I will talk about the Queue data structure.
In that lecture, you will understand how to write the proper Deferreds in Twisted. Also, I will show how to call errbacks with raise.
By the end of that lesson, you will understand what is callLater and deferLater functions and why do we use them. Also, we will cancel our tasks.
That lecture will tell you about LoopingCall in Twisted and why we even need to use it.
In that lecture, you will understand the Interfaces and how we use them in Twisted.
In that lecture, we will create a Guessing game! But, we will also add a timer! Our user will not be able to wait forever - he or she will provide the answer or lose.
By the end of that lecture, you will know about addCalbacks() and addBoth() functions in Deferreds. I will explain gatherResults() function and how you can use it.
That lecture tells you about DeferredList. It is a combination of deferred that is often used in various applications in Twisted.
Hello, my name is Andrew! I am a programmer that has been in the industry for lots of years. I know a lot, but not everything. However, here is the truth coming from lots of people - communications and networks are one of the most important aspects of IT.
Now, do you want to create servers and clients in Python? Are you tired of pure sockets courses? Do you want to understand and write on the Twisted framework? If the answer is yes, then that course is an excellent opportunity for you to start learning Python Twisted Framework.
By the end of that course, you will be able to write clients and servers in Twisted. You will improve your projects with Twisted clients and servers easily and quickly. Even if you do not want to write in Twisted, then you will understand about Protocols, Factories, Abstractions, Interfaces, and etc. These things are crucial not only in Twisted, and not only in Python but in the whole programming area. We will write projects on Twisted together. They are TCP chat, TCP media sender, UDP Consumer, UDP Producer, Audio Chat, Peer-to-peer chat, and Guessing Game.
Finally, you will know what it is like, to create the Internet. So, without further due - start your journey.