After going through the preceding chapters and learning various things about Python, we have come to the last chapter. Here, we want to discuss some general strategies that you can implement and how to write code that works faster, is cleaner, and is easier to maintain. These approaches can be used for data-oriented code—or any other type of code, for that matter.
This chapter is split into three parts. The first section will discuss how you can analyze and speed up your code, the second section will cover best practices for maintaining your code so that you'll code faster and cleaner, and in the third and final section, we'll go through a brief overview of the non-Python technologies that you might find useful for your projects.
The following topics will be covered in this chapter:
- Ways to monitor performance and identify bottlenecks
- Efficient computations with NumPy
- Using specialized algorithms
- Computing on many cores—or multiple machines—with Dask
- Speeding up code by using LLVM with Numba
- Adopting best practices for coding
- Setting and following formatting standards with black
- Measuring code quality with Wily
- Advanced testing with Hypothesis
- Tools and technologies beyond this book
- Other flavors of Python
- Docker
- Kubernetes