Summary
Let's summarize the concepts we discussed in this chapter.
We built a screen saver and in the process saw how to implement animations on the Tkinter canvas.
We also learned how to use the queue data structure to program a multithreaded application, without having to worry about synchronization between multiple threads trying to access the same memory, and without using complicated synchronization primitives.
The Weather Reporter application introduced us to the basics of network programming and how to tap into the internet to get data. We discussed two popular structures used for data exchange, namely XML and JSON.
The port scanner and the chat program discussed the basics of socket programming for interprocess and remote communication.
We used the TCP/IP protocol to send and receive messages in our chat program.
We saw a basic example of a server-client architecture.
We also saw how all forms of communication over a network occurs in bytes and how we can convert data to bytes and back...