.. _first_steps:

First steps with Tango Controls
-------------------------------

:audience:`all`, :lang:`all`

* In the :doc:`Overview </overview/index>` you will find basic information on Tango Controls. It will let you understand
  concepts of Tango Controls and help dancing it.

* You may also start with :ref:`trying Tango Controls <howto_try_tango>` either with a preconfigured virtual
  machine or installing basic setup on your own computer.

* If you would like to install Tango Controls please look on :ref:`Installation guides <getting_started_installation>`.

* To start connecting your devices to Tango Controls you should probably:

    * browse `Device Classes Catalogue <http://www.tango-controls.org/developers/dsc/>`_ to find device servers
      for your equipment

    * read :ref:`how to start a device server <howto_start_device_server>`

    * or read :doc:`development/cpp/first-device-class` and follow a guide
      :ref:`How to write your device class <how_to_write_first_device_class>` if your device is not yet
      supported by any existing :term:`device server`.

* To write your first C++ client see :doc:`development/cpp/first-client`.

* At the beginning you may also be interested in how to use provided tools:
  :ref:`Jive <jive_manual>`, :ref:`ATKPanel <atkpanel_manual>`,
  :ref:`Astor <astor_manual>`, :ref:`JDraw <jdraw_manual>` or :ref:`Pogo <pogo_manual>`.

* You may be also interested in the content of `Tango Controls web page`_



..    • what is necessary to have a minimum tango control system on a single machine or on several hosts sharing a single tango database, etc...
.. • how and what to install it on a single machine, on a set of machine sharing the same database server.
.. • How to try it.
.. • Integrating exiting device servers, declaring classes in device servers, declaring devices, running several instances...
.. • Playing with generic tools.
.. • How to develop your own device class.
.. • How to make a device server from one or several device classes

