Make sure to run the flask web server (e.g. "python3 serv.py") in order to play with this code. Using the old SimpleHTTPServer will not work here. If you get a "flask module not found" error, then you may need to install it using "pip install flask".
You can find installation instructions on Flask's documentation. Here is a quick start guide for creating a project. Flask is certainly not the only way to provide the kinds of client/server communications we are exploring in class. It's just a lightweight one that has a lot of nuts and bolts exposed. Real production environments are more likely to use a stack of back- and front-end tools such as React, Django, and its RESTful framework.
If you want to play with Dynamic Homefinder, you can download a version for MSDOS here. Use DOS simulator like DOSBox or Boxer to run it.
(Finally, note that this client/server setup intentionally disregards some best practices. It's not making the best use of back- and front-end capabilities, wastes bandwidth, and might break in high latency situations -- all of which you should do better in a real-world app.)
Here is some documentation on d3-brush, which we use on April 27th for our direct filter interactions.