The foundation of IPython's software engineering practices is openness. Openness is built into the project at a deep level. This attribute builds a dedicated and invested community of users and developers that have good feelings about the project. Openness also builds trust, accountabilty and integrity. It blurs the line betweeen users and developers by providing a single community that spans all project activities.
The IPython source code is released under the terms of the BSD license. This license allows any individual or legal entity to use the software, without restrictions, for any purpose, commercial or otherwise. Companies are building commercial products based on IPython:
A wide range of open-source projects and scientific collaborations also build on top of IPython.
IPython also uses a large number of open source projects itself:
We work closely with the developers of other open source projects that are building tools for scientific computing and data science:
There is a vibrant ecosystem of tools and an active community of users and developers around those tools. All of this is enabled by open source.
The entire development process of IPython is carried out in the open:
It is really easy, and sometimes tempting, to invent your own:
As much as possible, we try to use established, open standards:
In a few cases we have had to invent our own standards on top of these base standards:
We are attempting to make these standards documented, tested, versioned, etc. The broad adoption of the IPython Notebook by other language communities would not be possible without this openness.
In [1]:
%load_ext load_style
In [2]:
%load_style talk.css
In [ ]: