-
Notifications
You must be signed in to change notification settings - Fork 6
Tutorials review - DO NOT MERGE - FOR REVIEW ONLY #37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from 9 commits
b7ab1b9
18d81ed
614aa80
c4d705f
221ab57
8604f4e
c2cc7a1
747c533
5ab85e0
40c73b5
0736f6d
c3d6e59
c64a4b3
fc3d1f2
9e46d4c
1622e4a
022e700
ec39e97
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,101 @@ | ||
| { | ||
| "cells": [ | ||
| { | ||
| "cell_type": "markdown", | ||
| "id": "a2e2e354-9dcf-4af5-84d8-51142b01f1b2", | ||
| "metadata": { | ||
| "editable": true, | ||
| "slideshow": { | ||
| "slide_type": "" | ||
| }, | ||
| "tags": [] | ||
| }, | ||
| "source": [ | ||
| "# Project Overview\n", | ||
| "\n", | ||
| "This project demonstrates a typical project workflow in GeoLab. The objective is to instruct how to download data from EarthScope web services, and how to access data in the cloud. The difference between the two methods is that web services are file download services. In contrast, cloud services stream data directly to memory, which is more efficient and enables processing more data.\n", | ||
| "\n", | ||
| "This exercise convers:\n", | ||
| "\n", | ||
| "- how to initialize a project using git\n", | ||
| "- how to create a Python environment and manage packages\n", | ||
| "- explains how to get an EarthScope token to access data\n", | ||
| "- how to download seisimic and geodetic data using EarthScope web services\n", | ||
| "- how access seismic and geodetic data in the cloud\n", | ||
| " \n", | ||
| "A section can include quizzes, working in the terminal, or a coding exercise. The project map below shows how the sections correspond to notebooks.\n", | ||
| "\n", | ||
| "\n", | ||
| "\n", | ||
| "## Using Git\n", | ||
| "\n", | ||
| "Git is used to store and track code changes. We strongly recommend that you start a project by creating a git repository. First, by creating a git repository, you can rollback any changes made in your code. For example, adding a new feature. If it fails to work, you can revert your changes to the point where the code was working. Git also enables the creation of branches, which let you add new features without disrupting working code. If you create a GitHub account, you can keep a copy of the repository online and share it with others. There are many benefits to using git to manage project code.\n", | ||
| "\n", | ||
| "The notebook covers the basics of creating a git repository and managing code.\n", | ||
| "\n", | ||
| "## Python Environments and Package Management\n", | ||
| "\n", | ||
| "Creating a Python environment for a project is a best practice. Environments determine the version of Python used and the software packages available for a project. GeoLab's default environment contains many packages useful for scientific computing. However, you may want to add a package, and this module explains how to add packages and the basics of managing a Python environment.\n", | ||
| "\n", | ||
| "## Getting Authorization to Access EarthScope Services\n", | ||
| "\n", | ||
| "To download or access EarthScope SAGE and GAGE data, you will need an EarthScope account. Tracking data usage is a requirement of EarthScope's funders. Usage is tracked by a issuing an 0Auth token. You can request a token using EarthScope's CLI (Command Line Interface) or programatically with EarthScope's SDK (Software Development Kit). This section demonstrates both methods for requesting a token.\n", | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Let's work with Scott/comms to update this to NGF language instead of SAGE/GAGE before we go live (multiple spots throughout the whole project). Users should already have an Earthscope account at the time they get to this module/notebook, if they're already in GeoLab right? So maybe rephrase a tiny bit to make it clear they're using their existing Earthscope account credentials to get the access token. Also maybe worth a sentence that the CLI/SDK and token exchange are "built in" to GeoLab, and the token management is something they'll deal with more if they work on their local machine? |
||
| "\n", | ||
| "In the future, EarthScope will provide access to data in AWS S3 buckets. Direct data access is briefly discussed and will be expanded when the service becomes available.\n", | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. "EarthScope is under an active development effort to provide access to data..." - maybe doesn't sound quite so aspirational and far-off? |
||
| "\n", | ||
| "## Getting Data from Web Services\n", | ||
| "\n", | ||
| "This task demonstrates how to download files from SAGE and GAGE web services using Python. How to formulate a request with the correct parameters and authorization is shown. In addition, this section demonstrates how to access data from an AWS S3 bucket that does not require authorization.\n", | ||
| "\n", | ||
| "## Web Services Data Exercise\n", | ||
| "\n", | ||
| "Using the skills from the previous notebook. You will complete a Python script that will download data from EarthScope web services.\n", | ||
| "\n", | ||
| "## Getting Cloud Native Data\n", | ||
| "\n", | ||
| "This notebook demonstrates how to get cloud native seismic and geodetice data using the `boto3` Python and the EarthScope SDK. This section demonstrates how to access data from an AWS S3 bucket without authorization, and how the EarthScope SDK manages authorization.\n", | ||
| "\n", | ||
| "## Cloud Native Data Excercise\n", | ||
| "\n", | ||
| "Using the skills from the previous notebook. You will complete a Python script that pull seismic and geodetic data from the cloud." | ||
| ] | ||
| }, | ||
| { | ||
| "cell_type": "markdown", | ||
| "id": "d3c7e78d-5791-4c1a-a59c-8af6467921a7", | ||
| "metadata": {}, | ||
| "source": [ | ||
| "## [Next >](./1_git_intro.ipynb)" | ||
| ] | ||
| }, | ||
| { | ||
| "cell_type": "code", | ||
| "execution_count": null, | ||
| "id": "1d28597e-bba5-4d3b-aa4a-98524e741a31", | ||
| "metadata": {}, | ||
| "outputs": [], | ||
| "source": [] | ||
| } | ||
| ], | ||
| "metadata": { | ||
| "kernelspec": { | ||
| "display_name": "Python 3 (ipykernel)", | ||
| "language": "python", | ||
| "name": "python3" | ||
| }, | ||
| "language_info": { | ||
| "codemirror_mode": { | ||
| "name": "ipython", | ||
| "version": 3 | ||
| }, | ||
| "file_extension": ".py", | ||
| "mimetype": "text/x-python", | ||
| "name": "python", | ||
| "nbconvert_exporter": "python", | ||
| "pygments_lexer": "ipython3", | ||
| "version": "3.13.5" | ||
| } | ||
| }, | ||
| "nbformat": 4, | ||
| "nbformat_minor": 5 | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe elaborate a little on the benefits of git for collaboration? A sentence like "GitHub repositories are a common way for research groups to collaborate on code under development, and they are a convenient way to attach code or datasets to research publications."