Introduction to Traits
======================

This is an interactive tutorial to introduce you to the basics of
Traits and to give you an idea of what capabilities the Traits
libraries provide.  This tutorial assumes that you are comfortable
with the Python programming language, object-oriented programming,
and the core tools of the Python scientific ecosystem, such as
NumPy.

The tutorial starts with an **Introduction** which gives a realistic
example of scientific code; then talks about how traits can be used
for **Validation**, **Initialization**, **Documentation**,
**Observation** and **Visualization**.  This tutorial is designed
to introduce the basics of Traits, but also to explain *why* you
might want to use Traits in your own code.
