Workshops: Build a web application that uses ICE-D data

Outline

This workshop is intended to be a hands-on exercise in building a web application that obtains data from one of the ICE-D databases, does something interpretive with it, and then displays the results. Thus, folks in the workshop will:

– Set up a basic web application framework using Google App Engine and a simple web app package like Flask

– Have the web application get some data from the back-end SQL database

– Either perform some kind of analysis on the data within the web app code, or utilize a middle-layer calculation service

– Make a plot

– Display the results

At the end everyone will have built a simple web application that basically does the same thing as the ICE-D database. The main point is to distribute the idea that this is an effective, accessible, and reasonably straightforward way to distribute research results that is valuable (i) in participating in public data exchange and open science, and (ii) in incorporating data science and computational skills into teaching about Earth science.

Who and where

Sadly, this workshop can probably be done online. When, unclear. Target audience is just anyone who wants to know how to do this, with emphasis on graduate students and early career researchers (who are more likely to actually do something with this) and also on trying to get a mixture of folks who would use this for research and teaching applications.

Probably requires advertising. Probably best to advertise first and get an idea of what date is possible.

Probably limited to, e.g., 8-10 people.

Possibly schedule for several hours a day on several consecutive days. Can do in 4 hrs/day, 5 days?

Advance preparation needed

Someone needs to learn how to use dynamic plotting tools in Python

Written instructions for how to preconfigure everything: GCS login, local install GCS tools, text editor, MySQL client and DB access. Schedule “office hours” pre-workshop to get sorted before workshop actually starts.

Details on access to any other data source?

Written instructions for preparation WRT basic SQL, Python, Flask, etc. List of docs/help resources for all of these things.

Plan for structuring the workshop: does each participant build their own web app that does the same thing, or do we group people to work on, e.g., two different apps that do different things? Or both? First option is easier because everyone can follow along

Come up with an idea for what the web app does and pre-build it. Prepare instructional material. Write workshop script, etc.

Ideas for web apps

Should probably be focused on ICE-D:ALPINE, because it's rather more accessible to more people than Antarctica or Greenland

– Something that finds the closest dated moraines to your location and tells you about them

– Something that grabs a particular moraine and has checkboxes to let you average a certain subset, and then, e.g., calculate the likelihood it belongs to a particular climate event

– Something that creates current age/elevation plots for a selected Antarctica paper

– Something that agglomerates alpine glacier data within some geographic bin

– Something that plots alpine glacier data against some selected climate record