Welcome to Subpop
=================

Subpop is a framework designed to advance the paradigm of Plugin-Oriented Programming, and is designed to be an
evolution and refinement of the concepts in POP_. While this is an independently-developed work, it is heavily
inspired by the concepts explored in POP. The goal of subpop is to refine the design of POP to a very significant
degree, in order to make it better achieve the goals of plugin-oriented programming, which is to provide a
useful framework for developing software at scale. In pursuing this goal, subpop will happily re-design or
even jettison features that the author feels will ultimately make subpop less reliable or large-scale software
projects messier.

See :ref:`What is Subpop?` for more details on what is and what it can do for you.

.. _POP: https://pypi.org/project/pop/

Why is this Free?
=================

This technology is being released under an Open Source license (`Apache Software License, version 2`) along with
easy-to-understand documentation, based on the belief that software should be free to use and modify, and easy to
understand, use and extend. I want this technology to not just be 'Open Source' but be 'open' in the sense that it can
be used, understood and enjoyed by others.

Beyond the License
==================

Open Source is more than a license. Free software is more than just source code. It is a philosophy of developing
software that benefits greatly from true collaboration and openness. Qualities such as honesty, integrity, transparency
of intent, not pursuing your own ambition in a way that is harmful to others or their endeavors, and a sincere desire to
help and give back are the attributes that form the foundation of Open Source and Free Software. These qualities result
in people from around the world working together, and ultimately sharing source code.

Said another way -- You can use this software, and even abide by its licensing terms, and still potentially undermine
the pillars of true collaboration.

I created this software with the intention of collaborating with you, and to have fun by working together towards common
interests. I ask that you consider your own ethical commitment not just to the license, but to the projects that you
choose to use, participate in and support.

I will defend your right to fork, or simply take this code and do your own thing without giving anything in return,
because the source code license allows you to do that. But choosing to spurn collaboration with upstream projects can be
a frivolous exercise which negatively impacts the collaborative ecosystem that sustains Open Source and free software.
We should all be trying our best not just to use free software, nor merely benefit personally from it, but to work
together in the spirit of Open Source, as much as we are able.

At its heart, Open Source is more than a license or source code. It is a shared code *of ethics* which governs our
behavior and guides our actions towards one another:

  |  **NOW this is the Law of the Jungle — as old and as true as the sky;**
  |  **And the Wolf that shall keep it may prosper, but the Wolf that shall break it must die.**
  |
  |  **As the creeper that girdles the tree-trunk the Law runneth forward and back —**
  |  **For the strength of the Pack is the Wolf, and the strength of the Wolf is the Pack.**
  |
  |  ― `Rudyard Kipling, The Jungle Book`_

We should all be seeking to strengthen our "pack". This is the true meaning of collaboration, which is the heart of Open
Source and free software.

.. _Apache Software License, version 2: https://www.apache.org/licenses/LICENSE-2.0.txt
.. _Rudyard Kipling, The Jungle Book: http://www.kiplingsociety.co.uk/poems_lawofjungle.htm

.. toctree::
   :maxdepth: 2
   :caption: Contents:

   intro
   api
   capabilities


Indices and tables
==================

* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
