Globus software-as-a-service (SaaS) is widely used by researchers to manage their data on XSEDE, DOE, and campus computing resources. The Globus platform-as-a-service (PaaS) makes APIs available for developers to use in external applications and services. The platform exposes identity and access management functionality that simplifies access to storage and computing resources using campus logins, and facilitates the integration of XSEDE and other research cyberinfrastructure services into web and mobile applications. In this tutorial, we will describe and demonstrate how developers can build web applications and services that leverage Globus and the Science DMZ to provide a broad range of researchers with access to advanced data management capabilities. Prerequisites: if you would like to participate in the hands-on exercise you will need a laptop with an SSH client, a modern web browser, and Python 2.7+ (or a recent version of a Python development environment). It is helpful if you have some familiarity with web application development (creating and managing HTTP GET, PUT, and POST requests/responses) and are knowledgeable in Python, although most of the capabilities presented will be accessible using other programming languages.
To ensure that you are ready to participate in the exercises, we suggest that you install the pip (
https://pip.pypa.io/en/stable/) and virtualenv (
https://virtualenv.pypa.io/en/stable/) tools for Python, and verify that you can create and activate a virtualenv.
If you do not wish to install the Python exercises on your personal computer, we will also have cloud-hosted virtual machines available for use for the duration of the tutorial.