The ALMA Observatory is currently operating ′Early Science′ observing. The Cycle0 and Cycle1 Calls for Proposals are
part of this Early Science, and in both the ALMA Observing Tool plays a crucial role. This paper describes how the
ALMA OT tackles the problem of making millimeter/sub-millimeter interferometry accessible to the wider community,
while allowing "experts" the power and flexibility they need.
We will also describe our approach to the challenges of supporting multiple customers, and explore the lessons learnt
from the Early Science experiences. Finally we look ahead to the challenges presented by future observing cycles.
ALMA Common Software (ACS) is a distributed control framework based on CORBA that provides communication
between distributed pieces of software. Because of its size and complexity it provides its own compilation
system, a mix of several technologies. The current ACS compilation process depends on specific tools, compilers,
code generation, and a strict dependency model induced by the large number of software components. This document
presents a summary of several porting and compatibility attempts at using ACS on platforms other than
the officially supported one. A porting of ACS to the Microsoft Windows Platform and to the ARM processor
architecture were attempted, with different grades of success. Also, support for LINUX-PREEMPT (a set of
real-time patches for the Linux kernel) using a new design for real-time services was implemented. These efforts
were integrated with the ACS building and compilation system, while others were included in its design. Lessons
learned in this process are presented, and a general approach is extracted from them.
Trending near real-time data is a complex task, specially in distributed environments. This problem was typically
tackled in financial and transaction systems, but it now applies to its utmost in other contexts, such as hardware
monitoring in large-scale projects. Data handling requires subscription to specific data feeds that need to be
implemented avoiding replication, and rate of transmission has to be assured. On the side of the graphical client,
rendering needs to be fast enough so it may be perceived as real-time processing and display.
ALMA Common Software (ACS) provides a software infrastructure for distributed projects which may require
trending large volumes of data. For theses requirements ACS offers a Sampling System, which allows sampling
selected data feeds at different frequencies. Along with this, it provides a graphical tool to plot the collected
information, which needs to perform as well as possible.
Currently there are many graphical libraries available for data trending. This imposes a problem when trying
to choose one: It is necessary to know which has the best performance, and which combination of programming
language and library is the best decision. This document analyzes the performance of different graphical libraries
and languages in order to present the optimal environment when writing or re-factoring an application using
trending technologies in distributed systems. To properly address the complexity of the problem, a specific set of
alternative was pre-selected, including libraries in Java and Python, languages which are part of ACS. A stress
benchmark will be developed in a simulated distributed environment using ACS in order to test the trending
Observatories are not all about exciting new technologies and scientific progress. Some time has to be dedicated
to the future engineers' generations who are going to be on the front line in a few years from now. Over
the past six years, ALMA Computing has been helping to build up and collaborating with a well-organized
engineering students' group at Universidad T´ecnica Federico Santa Maria in Chile. The Computer Systems
Research Group (CSRG) currently has wide collaborations with national and international organizations, mainly
in the astronomical observations field. The overall coordination and technical work is done primarily by students,
working side-by-side with professional engineers. This implies not only using high engineering standards, but
also advanced organization techniques.
This paper aims to present the way this collaboration has built up an own identity, independently of individuals,
starting from its origins: summer internships at international observatories, the open-source community, and
the short and busy student's life. The organizational model and collaboration approaches are presented, which
have been evolving along with the years and the growth of the group. This model is being adopted by other
university groups, and is also catching the attention of other areas inside the ALMA project, as it has produced
an interesting training process for astronomical facilities. Many lessons have been learned by all participants
in this initiative. The results that have been achieved at this point include a large number of projects, funds
sources, publications, collaboration agreements, and a growing history of new engineers, educated under this
Control System for an Amateur Telescope (CSAT) is a distributed telescope control system model for amateur
telescopes with transparent interchangeable components, built using the ALMA Common Software (ACS) framework.
The CSAT project has been thought as the first step towards a generic telescope control model, which will
consist on a generic control framework for any telescope mount. With the ACS Container/Component model, a
completely different hardware can be supported by just re-implementing the low-level components for the new
setup. This way, CSAT becomes a very good example of all the features that ACS provides for building a generic
telescope control framework.