Course Material: Learning concurrent programming with the Vector robot
Concurrent programming is the most common form of programming in the real world
The most common paradigm of programming is synchronous programming where one writes a set of commands which are executed in the defined sequence in which they have been written. The reason we usually stick with synchronous programming is simple: it usually comes very naturally to us. However, there are definitely many limitations of synchronous programming, specifically when multiple operations need to be done concurrently either as a requirement, or for speeding up the job. That brings us to concurrent programming.
But what is concurrent programming? There are numerous forms of concurrent programming. For the purposes of this tutorial, we will stick to the forms of concurrent programming in Python, since we will be using the Vector SDK to do some demos. This tutorial is an excellent primer on concurrent programming in Python. To summarize, there are three main forms of concurrent programming: (i) Threading, which is preemptive multitasking, (ii) Async…