Chapter 2. Infrastructure and Tools
Infrastructure is much more important than architecture.
— Rem Koolhaas
You could say infrastructure is not everything, but without infrastructure everything can be nothing—be it in the real world or in technology. What do we mean then by infrastructure? In principle, it is those hardware and software components that allow the development and execution of a simple Python script or more complex Python applications.
However, this chapter does not go into detail with regard to hardware infrastructure, since all Python code and examples should be executable on almost any hardware.[5] Nor does it discuss different operating systems, since the code should be executable on any operating system on which Python, in principle, is available. This chapter rather focuses on the following topics:
- Deployment
-
How can I make sure to have everything needed available in a consistent fashion to deploy
Pythoncode and applications? This chapter introducesAnaconda, aPythondistribution that makes deployment quite efficient, as well as thePython Quant Platform, which allows for a web- and browser-based deployment. - Tools
-
Which tools shall I use for (interactive)
Pythondevelopment and data analytics? The chapter introduces two of the most popular development environments forPython, namelyIPythonandSpyder.
There is also Appendix A, on:
- Best practices
-
Which best practices should I follow when developing
Pythoncode? The appendix briefly reviews fundamentals of, ...