diff --git a/about/code-of-conduct.md b/about/code-of-conduct.md index 10476d14..c10fe913 100644 --- a/about/code-of-conduct.md +++ b/about/code-of-conduct.md @@ -26,9 +26,9 @@ OceanHackWeek organizers may take action to redress anything designed to, or wit ## Reporting a violation -Harassment and other code of conduct violations reduce the value of OceanHackWeek for everyone. If someone makes you or anyone else feel unsafe or unwelcome, please report it as soon as possible to one of the instructors. You can make a report either personally or anonymously. **Anonymous reports can be made [here](https://oceanhackweek.wufoo.com/forms/zep2ybt1swlulc/).** +Harassment and other code of conduct violations reduce the value of OceanHackWeek for everyone. If someone makes you or anyone else feel unsafe or unwelcome, please report it as soon as possible to one of the organizers or instructors. You can make a report either personally or anonymously. **Anonymous reports can be made [here](https://oceanhackweek.wufoo.com/forms/zep2ybt1swlulc/).** -This anti-harassment policy is based on the example policy from the Geek Feminism wiki, created by the Ada Initiative and other volunteers. +This anti-harassment policy is based on the example policy from the [Geek Feminism wiki](https://geekfeminism.fandom.com), created by the [Ada Initiative](https://adainitiative.org/) and other volunteers. ## Group discussion diff --git a/index.md b/index.md index 7f895dbf..f41aeae7 100644 --- a/index.md +++ b/index.md @@ -144,8 +144,9 @@ Virtual event: We expect to hold formal sessions in at least two time zones, USA :hidden: about/index.md -about/pasthackweeks.md +% about/pasthackweeks.md OceanHackWeek 2022 +OHW22 Schedules % resources/index.md % posts ``` diff --git a/resources/img/BasicForkWorkflow.png b/ohw22/ev/img/BasicForkWorkflow.png similarity index 100% rename from resources/img/BasicForkWorkflow.png rename to ohw22/ev/img/BasicForkWorkflow.png diff --git a/resources/img/Jupyter-LaunchNewTerminal.jpg b/ohw22/ev/img/Jupyter-LaunchNewTerminal.jpg similarity index 100% rename from resources/img/Jupyter-LaunchNewTerminal.jpg rename to ohw22/ev/img/Jupyter-LaunchNewTerminal.jpg diff --git a/resources/img/TerminalPangeo.png b/ohw22/ev/img/TerminalPangeo.png similarity index 100% rename from resources/img/TerminalPangeo.png rename to ohw22/ev/img/TerminalPangeo.png diff --git a/resources/img/centralized_workflow.png b/ohw22/ev/img/centralized_workflow.png similarity index 100% rename from resources/img/centralized_workflow.png rename to ohw22/ev/img/centralized_workflow.png diff --git a/resources/img/centralized_workflow_atlasian.png b/ohw22/ev/img/centralized_workflow_atlasian.png similarity index 100% rename from resources/img/centralized_workflow_atlasian.png rename to ohw22/ev/img/centralized_workflow_atlasian.png diff --git a/resources/img/clone-result.png b/ohw22/ev/img/clone-result.png similarity index 100% rename from resources/img/clone-result.png rename to ohw22/ev/img/clone-result.png diff --git a/resources/img/clone.png b/ohw22/ev/img/clone.png similarity index 100% rename from resources/img/clone.png rename to ohw22/ev/img/clone.png diff --git a/resources/img/earthdata-login.png b/ohw22/ev/img/earthdata-login.png similarity index 100% rename from resources/img/earthdata-login.png rename to ohw22/ev/img/earthdata-login.png diff --git a/resources/img/fork_button.png b/ohw22/ev/img/fork_button.png similarity index 100% rename from resources/img/fork_button.png rename to ohw22/ev/img/fork_button.png diff --git a/resources/img/forked_workflow.png b/ohw22/ev/img/forked_workflow.png similarity index 100% rename from resources/img/forked_workflow.png rename to ohw22/ev/img/forked_workflow.png diff --git a/resources/img/github-signup.png b/ohw22/ev/img/github-signup.png similarity index 100% rename from resources/img/github-signup.png rename to ohw22/ev/img/github-signup.png diff --git a/resources/img/hackweek-mission.png b/ohw22/ev/img/hackweek-mission.png similarity index 100% rename from resources/img/hackweek-mission.png rename to ohw22/ev/img/hackweek-mission.png diff --git a/resources/img/jupyterlab.png b/ohw22/ev/img/jupyterlab.png similarity index 100% rename from resources/img/jupyterlab.png rename to ohw22/ev/img/jupyterlab.png diff --git a/resources/img/newPR.png b/ohw22/ev/img/newPR.png similarity index 100% rename from resources/img/newPR.png rename to ohw22/ev/img/newPR.png diff --git a/resources/img/newRepo.png b/ohw22/ev/img/newRepo.png similarity index 100% rename from resources/img/newRepo.png rename to ohw22/ev/img/newRepo.png diff --git a/resources/img/ohw21-clone.png b/ohw22/ev/img/ohw21-clone.png similarity index 100% rename from resources/img/ohw21-clone.png rename to ohw22/ev/img/ohw21-clone.png diff --git a/resources/img/ohw21-jupyterhub-loading.png b/ohw22/ev/img/ohw21-jupyterhub-loading.png similarity index 100% rename from resources/img/ohw21-jupyterhub-loading.png rename to ohw22/ev/img/ohw21-jupyterhub-loading.png diff --git a/resources/img/ohw21-jupyterhub-opening.png b/ohw22/ev/img/ohw21-jupyterhub-opening.png similarity index 100% rename from resources/img/ohw21-jupyterhub-opening.png rename to ohw22/ev/img/ohw21-jupyterhub-opening.png diff --git a/resources/img/ohw21-jupyterlab.png b/ohw22/ev/img/ohw21-jupyterlab.png similarity index 100% rename from resources/img/ohw21-jupyterlab.png rename to ohw22/ev/img/ohw21-jupyterlab.png diff --git a/resources/img/ohw21-shutdownhub-step1.png b/ohw22/ev/img/ohw21-shutdownhub-step1.png similarity index 100% rename from resources/img/ohw21-shutdownhub-step1.png rename to ohw22/ev/img/ohw21-shutdownhub-step1.png diff --git a/resources/img/ohw21-shutdownhub-step2.png b/ohw22/ev/img/ohw21-shutdownhub-step2.png similarity index 100% rename from resources/img/ohw21-shutdownhub-step2.png rename to ohw22/ev/img/ohw21-shutdownhub-step2.png diff --git a/resources/img/ohwjupyterhub-opening.png b/ohw22/ev/img/ohwjupyterhub-opening.png similarity index 100% rename from resources/img/ohwjupyterhub-opening.png rename to ohw22/ev/img/ohwjupyterhub-opening.png diff --git a/resources/img/pangeo-loading.png b/ohw22/ev/img/pangeo-loading.png similarity index 100% rename from resources/img/pangeo-loading.png rename to ohw22/ev/img/pangeo-loading.png diff --git a/resources/img/pangeo-opening.png b/ohw22/ev/img/pangeo-opening.png similarity index 100% rename from resources/img/pangeo-opening.png rename to ohw22/ev/img/pangeo-opening.png diff --git a/resources/img/private-github.png b/ohw22/ev/img/private-github.png similarity index 100% rename from resources/img/private-github.png rename to ohw22/ev/img/private-github.png diff --git a/resources/img/public-github.png b/ohw22/ev/img/public-github.png similarity index 100% rename from resources/img/public-github.png rename to ohw22/ev/img/public-github.png diff --git a/resources/img/repos.png b/ohw22/ev/img/repos.png similarity index 100% rename from resources/img/repos.png rename to ohw22/ev/img/repos.png diff --git a/resources/img/stop-server.png b/ohw22/ev/img/stop-server.png similarity index 100% rename from resources/img/stop-server.png rename to ohw22/ev/img/stop-server.png diff --git a/resources/img/terminal-button.png b/ohw22/ev/img/terminal-button.png similarity index 100% rename from resources/img/terminal-button.png rename to ohw22/ev/img/terminal-button.png diff --git a/resources/img/terminal-clone.png b/ohw22/ev/img/terminal-clone.png similarity index 100% rename from resources/img/terminal-clone.png rename to ohw22/ev/img/terminal-clone.png diff --git a/resources/img/terminal.png b/ohw22/ev/img/terminal.png similarity index 100% rename from resources/img/terminal.png rename to ohw22/ev/img/terminal.png diff --git a/resources/logistics/coffeebreaks.md b/ohw22/ev/logistics/coffeebreaks.md similarity index 100% rename from resources/logistics/coffeebreaks.md rename to ohw22/ev/logistics/coffeebreaks.md diff --git a/ohw22/ev/logistics/getting_help.md b/ohw22/ev/logistics/getting_help.md new file mode 100644 index 00000000..296e5b36 --- /dev/null +++ b/ohw22/ev/logistics/getting_help.md @@ -0,0 +1,46 @@ +# Getting Help + +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + +We know how overwhelming all of this information can be. Here is some for asking questions and figuring out where to turn for help. + +You can ask anything on the Slack `#ohw22-general` channel, any time. Organizers and helpers are monitoring this channel, and some of your fellow hackweek participants may be able to help you! Also, feel free to send a direct message on Slack to any of the organizers or helpers. + +## Helpdesk + +We've set up the `#ohw22-helpdesk` Slack channel to ask technical questions (or other types of questions, if you'd like). + +We will set up some helpdesk Slack user group that you can use to tag your question as, say, about Python. We'll list and describe those groups here. If you know the rough category of help that you may need, please tag one of the helpdesk user groups to get their attention. All help usergroups can be found by typing `@help-` and Slack will prompt with options. + +You are also welcome to direct message the helpers if you don't feel comfortable asking questions publicly. + +### Slack help groups + +- `@help-infrastructure` - For issues regarding the JupyterHub, Slack, Github, and Zoom. +- `@help-projects` - For help with managing projects, for instance asking how to set up a new repo, or organize meetings. +- `@help-python` - Questions about Python programming. +- `@help-r` - Questions about R programming. +- `@help-tutorials` - For help with tutorial logistics, like cloning the notebooks. +- `@help-website` - If there are any issues with the website tag us to take a look. + +## During tutorials + +- Ask questions on Slack! Use the `#ohw22-tutorials` channel to ask questions or check out answers to questions others have posed. We will use this same channel every day. Several of us will be monitoring this channel and addressing your questions throughout the tutorials +- **Vote up** questions from others to help the moderators prioritize which questions to ask the speaker during tutorials. +- Tutorial moderators will mark questions that are best answered by the instructor and ask helpers (and anyone else!) to answer the rest in real time. Then when the instructor ask if there are questions the moderators will read those reserved for the instructor. +- Zoom Chat will **not** be available. Ask on Slack! +- You will be muted at the start of the tutorial presentation. The moderator will review questions on Slack and ask the questions to the instructor during Q&A time. + +## Projects + +See the [Projects Getting Started page](../projects/steps.md). Feel free to post a question on the `#ohw22_project` channel, too. + +## Reporting a Code of Conduct violation + +Harassment and other [Code of Conduct violations](/about/code-of-conduct.md) reduce the value of OceanHackWeek for everyone. If someone makes you or anyone else feel unsafe or unwelcome, please report it as soon as possible to one of the organizers or instructors. You can make a report either personally or anonymously. **Anonymous reports can be made [here](https://oceanhackweek.wufoo.com/forms/zep2ybt1swlulc/).** + diff --git a/ohw22/ev/logistics/index.md b/ohw22/ev/logistics/index.md new file mode 100644 index 00000000..d2fabd3b --- /dev/null +++ b/ohw22/ev/logistics/index.md @@ -0,0 +1,43 @@ +# Logistics Overview + +Some of you will participate in person at various satellite events, and others will participate virtually from time zones all over the world. As we have learned throughout the pandemic, each of these gathering styles has strengths and weaknesses. We are committed to providing an engaging and full experience for everyone and will strive to facilitate cross communication and collaboration across all participants. + +## Time + +OceanHackWeek 2021 will take place August 15-19. + +**In-person participants** will gather as for times as directed by the satellite organizers. While **virtual participants** may choose to engage primarily with this group and schedule via Zoom and Slack, we strongly encourage you to join the program designed specifically as a virtual event. The virtual event will be split into two schedules and groups based on the distribution of participant time zones, in a 3-hour daily block of formal, live activities. The **larger virtual event** will take place 11:00am - 2:00pm PDT / 18:00 - 21:00 UTC. + +Detailed schedules are available [Schedule page](../schedule.md). + +## Channel of communication: Slack + +We will use the [OceanHackWeek Slack workspace](http://oceanhackweek.slack.com/) as the main channel of communication before, during, and after the hackweek. You should have received an invitation to join this workspace. If you haven't seen it in your inbox, check your spam folder, or email us at *oceanhkw@uw.edu*. + +[Go directly from a channel or direct message chat into a voice or video chat](https://slack.com/help/articles/216771908-Make-calls-in-Slack), with screen-sharing capability. This will be particularly useful during hack project time. + +## OHW JupyterHub ("The Hub") and GitHub + +- OHW JupyterHub ("The Hub"): [https://ohw.pilot.2i2c.cloud](https://ohw.pilot.2i2c.cloud) +- OHW GitHub organization: [https://github.com/oceanhackweek](https://github.com/oceanhackweek) + +## Tutorials broadcasting + +We will use Zoom to broadcast all tutorials. The Zoom link will be distributed via Slack. + +## Hack projects + +See [Project overview](../projects/index.md) and [Hacking at OHW21](../projects/steps.md) for more info. + +## Getting Help + +See the [Getting Help page](getting_help.md) for guidance and links to have your questions answered or connect with organizers with concerns. + + +```{toctree} +:maxdepth: 2 +:caption: OceanHackWeek 2022 (OHW22) +:hidden: + +getting_help.md +``` \ No newline at end of file diff --git a/resources/prep/conda.md b/ohw22/ev/prep/conda.md similarity index 86% rename from resources/prep/conda.md rename to ohw22/ev/prep/conda.md index 365801c2..7727b66f 100644 --- a/resources/prep/conda.md +++ b/ohw22/ev/prep/conda.md @@ -1,6 +1,13 @@ # Conda and installing Python and R environments -### Overview +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + +## Overview ### What is Conda? [**Conda**](http://conda.pydata.org/docs/) is an **open source `package` and `environment` management system for any programming languages, but very popular among python community,** @@ -28,16 +35,27 @@ So even though Python is one of the most adaptable, easy-to-use software systems We also provide instructions for using [Anaconda](https://www.continuum.io), which is our recommended Python distribution, for installing and working with Python on your local computer. We can assist in setting up "conda" environments that will simplify the gathering of Python libraries and version specific to the tutorial you are working on. -### Installing Conda Miniconda +## Installing Conda Miniconda + +:::{admonition} For local development +:class: warning + +Conda is already installed on our JupyterHub, so these instructions are for if you wish to get started with developing locally. + +We may not have the ability to support everyone's individual system, so we have the JupyterLab setup so that everyone can work on the same pre-configured platform. + +::: If you don't have conda (either with *Miniconda* or the full *Anaconda Distribution*) already installed **we recommend [installing Miniconda for latest Python 3](https://docs.conda.io/en/latest/miniconda.html).** https://conda.io/projects/conda/en/latest/user-guide/install/index.html -#### Windows +### Windows + Download the proper installer for your Windows platform (64 bits). When installing, you will be asked if you wish to make the Anaconda Python your default Python for Windows. If you do not have any other installation that is a good option. If you want to keep multiple versions of Python on your machine (e.g. ESRI-supplied python, or 64 bit versions of Anaconda), then don't select the option to modify your path or modify your Windows registry settings. -#### Linux and OSX +### Linux and OSX + You may follow manual steps from [here](https://docs.conda.io/en/latest/miniconda.html) similar to the instructions on Windows (see above). Alternatively, you can execute these commands on a terminal shell (in this case, the bash shell): ```bash @@ -51,24 +69,24 @@ export PATH="$HOME/miniconda/bin:$PATH" conda update conda --yes ``` -### Installing Python +## Installing Python -We will be using Python 3.6 or 3.7 during the week (either will work). Since Anaconda (on Linux) expects you to work in the "bash" shell, if this is not already your default shell, you need to set it to be so (use the "chsh -s /bin/bash" command to change your default shell to bash) or just run an instance of bash from the command line before issuing "Conda" commands (/bin/bash or where it is located on your system). +We will be using Python 3.8 or 3.9 during the week (either will work). Since Anaconda (on Linux) expects you to work in the "bash" shell, if this is not already your default shell, you need to set it to be so (use the "chsh -s /bin/bash" command to change your default shell to bash) or just run an instance of bash from the command line before issuing "Conda" commands (/bin/bash or where it is located on your system). If you are already familiar with Python 2.7, you can take a look at the syntax differences [here](http://sebastianraschka.com/Articles/2014_python_2_3_key_diff.html), but the main point to remember is to put the print statements in parentheses: + ```python print('Hello World!') ``` - ``` bash -$ conda create -n py37 python=3.7 +$ conda create -n py39 python=3.9 ``` -To use Python 3.7: +To use Python 3.9: ``` bash -$ conda activate py37 +$ conda activate py39 ``` To check if you have the correct version: @@ -76,5 +94,3 @@ To check if you have the correct version: ``` bash $ python --version ``` - - diff --git a/resources/prep/git.md b/ohw22/ev/prep/git.md similarity index 90% rename from resources/prep/git.md rename to ohw22/ev/prep/git.md index b8aa5faf..dcca306b 100644 --- a/resources/prep/git.md +++ b/ohw22/ev/prep/git.md @@ -1,17 +1,24 @@ # Git Setup and Basics +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + ## About Git and GitHub [Git](https://git-scm.com/) is a popular version control system that is the foundation of most open source software development. You are not required to be a Git pro in advance of this event, but come prepared to learn a lot about it! [GitHub](https://github.com) is a hosting service for Git repositories, enabling us to share code across teams in a web environment. -We will use Git and GitHub for collaborative work. Be sure to arrive at {OceanHackWeek with your own [GitHub](https://github.com/) account. +We will use Git and GitHub for collaborative work. Be sure to arrive at OceanHackWeek with your own [GitHub](https://github.com/) account. ## Git Installation * Windows * Install Git for Windows from this [link](https://gitforwindows.org/). For more setup details follow these [instructions](https://carpentries.github.io/workshop-template/#shell) * Mac OS - * Download the [git installer](https://git-scm.com/download/mac) and run it. + * Download the [git installer](https://git-scm.com/download/mac) and run it. * Linux (Debian): `sudo apt install git-all` To test, open the terminal (on Windows, Git Bash) and setup your username and email: @@ -39,7 +46,7 @@ git config --global core.editor "nano -w" ## Git steps and workflows ```{admonition} "Centralized vs Fork-Clone workflows" -Steps 1-5 focus on the Git "centralized workflow". We present it here as an illustration, but **the workflow we recommend for use in {OceanHackWeek is the Git Fork - Clone workflow, discussed in Step 6.** +Steps 1-5 focus on the Git "centralized workflow". We present it here as an illustration, but **the workflow we recommend for use in OceanHackWeek is the Git Fork - Clone workflow, discussed in Step 6.** ``` @@ -51,7 +58,7 @@ On your own or someone in your project group (preferably one who has never done Click `New` and follow the steps: check yes to create a `README.md` file. -* Format project name as `ohw21-proj-myprojectname` (you can change the name later), where `myprojectname` is a brief name for your project +* Format project name as `ohw22-proj-myprojectname` (you can change the name later), where `myprojectname` is a brief name for your project * Invite others to the repo: * `Settings -> Collaborators` * Note to collaborators: you will receive an invitation to your email associated with github.com. If you cannnot find it look for the `bell` notifications on the top right of the website. @@ -61,10 +68,10 @@ Click `New` and follow the steps: check yes to create a `README.md` file. Each participant should clone the repository so they have their copy on their JupyterHub account space (and locally in the participant's computer, if desired). Navigate through the terminal to the folder where you want to keep {OceanHackWeek work (`cd path_to_oceanhackweek`). ```bash -git clone https://github.com/oceanhackweek/ohw21-proj-myprojectname.git +git clone https://github.com/oceanhackweek/ohw22-proj-myprojectname.git ``` -This will create a new folder called `ohw21-proj-myprojectname`. Navigate to the new folder, `ohw21-proj-myprojectname`. +This will create a new folder called `ohw22-proj-myprojectname`. Navigate to the new folder, `ohw22-proj-myprojectname`. ### 3. Update the README with your name @@ -144,10 +151,10 @@ So far you collaborated using what is called a "centralized git workflow": i.e. ![](../img/centralized_workflow_atlasian.png) -Some merge conflicts can be avoided by working with **forks** (using a "forking git workflow) instead of directly pushing to the repo. +Many merge conflicts can be avoided by working with **forks** (using a "forking git workflow) instead of directly pushing to the repo. ```{admonition} "Forking Git Workflow" -This is the workflow covered in the OHW20 pre-hackweek presentation on 2020-8-6. The presentation [pdf is here](https://raw.githubusercontent.com/oceanhackweek/ohw-preweek/master/git-github-survival-guide/Git-GitHub-survival-guide.pdf), and the [recording is here](https://youtu.be/7nYFRixSV2c); **the workflow is the one recommended for use in OHW21.** +This is the workflow covered in the OHW20 pre-hackweek presentation on 2020-8-6. The presentation [pdf is here](https://raw.githubusercontent.com/oceanhackweek/ohw-preweek/master/git-github-survival-guide/Git-GitHub-survival-guide.pdf), and the [recording is here](https://youtu.be/7nYFRixSV2c); **the workflow is the one recommended for use in OHW22.** Here's an excellent guide to the Forking Git Workflow: [Step-by-step guide to contributing on GitHub](https://www.dataschool.io/how-to-contribute-on-github/) ``` @@ -179,6 +186,11 @@ From now on you will push to `origin`, but pull from `upstream`. Make sure your `origin` contains your github username, and upstream contains the `oceanhackweek` name. ``` +```{admonition} Hint +:class: toggle +Github has a handy [command line tool `gh`](https://cli.github.com/). If you fork a repo and use the `gh` command shown on the page to clone the repo, it will set `upstream` and `origin` appropriately for you. +``` + #### Submitting changes via a pull request Make some changes to a file and commit and publish them. @@ -202,7 +214,7 @@ Submit a pull request by clicking `New pull request`: * Reviewer: look through changes in the files * Approve PR or ask for more changes. -```{admonition} +```{admonition} Note While your pull request is pending, any change you push to the fork will become a part of the request. This is useful if you are asked to make small changes before your PR is accepted. ``` diff --git a/resources/prep/github.md b/ohw22/ev/prep/github.md similarity index 71% rename from resources/prep/github.md rename to ohw22/ev/prep/github.md index 6053c353..33c3e316 100644 --- a/resources/prep/github.md +++ b/ohw22/ev/prep/github.md @@ -1,10 +1,17 @@ # GitHub +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + ## About Git and GitHub -[Git](https://git-scm.com/) is a popular version control system that is the foundation of most open source software development. You are not required to be a Git pro in advance of this event, but come prepared to learn a lot about it! [GitHub](github.com) is a hosting service for Git repositories, enabling us to share code across teams in a web environment. +[Git](https://git-scm.com/) is a popular version control system that is the foundation of most open source software development. You are not required to be a Git pro in advance of this event, but come prepared to learn a lot about it! [GitHub](https://github.com) is a hosting service for Git repositories, enabling us to share code across teams in a web environment. -We will use Git and GitHub for collaborative work. Be sure to arrive at {OceanHackWeek with your own [GitHub](https://github.com/) account. +We will use Git and GitHub for collaborative work. Be sure to arrive at {OceanHackWeek with your own [GitHub](https://github.com) account. ## Why do I need a GitHub account? @@ -23,9 +30,9 @@ Then, click on the big green button and then answer a few required questions. Be GitHub organizations are a convenient way for teams to get all content relevant to a specific project or workshop into one place. By having everything in one central location you will spend less time searching for hackweek content. GitHub organizations have "teams" that offer simple ways to provide respository access to groups of people, rather than individuals. -We have created a GitHub organization called oceanhackweek at [https://github.com/oceanhackweek](https://github.com/oceanhackweek). For security purposes you can only join the organization by invitation. You should already have received the invitation to GitHub. If you didn't: +We have created a GitHub organization called "oceanhackweek" at [https://github.com/oceanhackweek](https://github.com/oceanhackweek). For security purposes you can only join the organization by invitation. You should already have received the invitation to GitHub. If you didn't: -1. Once you have a GitHub ID, send it to Emilio Mayorga on our Slack channel +1. Once you have a GitHub ID, in the `#ohw22-helpdesk` Slack channel ask for help and include `@help-infrastructure` in your message so that folks who have the ability to make changes are notified. 2. We will then send you an invitation which should generate an email notification to the email you provided when you signed up for GitHub 3. Follow the links in the email to accept the invitation diff --git a/ohw22/ev/prep/index.md b/ohw22/ev/prep/index.md new file mode 100644 index 00000000..92048ffa --- /dev/null +++ b/ohw22/ev/prep/index.md @@ -0,0 +1,36 @@ +# Preparations + +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + +## Git + +[Git](git.md) + +## GitHub + +[GitHub](github.md) + +## Jupyter and the Hub + +[Jupyter and the Hub](jupyterhub.md) + +## conda + +[Conda, Python, R](conda.md) + + +```{toctree} +:maxdepth: 2 +:caption: OceanHackWeek 2022 (OHW22) +:hidden: + +Git +github +jupyterhub +Conda, Python, R +``` \ No newline at end of file diff --git a/resources/prep/jupyterhub.md b/ohw22/ev/prep/jupyterhub.md similarity index 96% rename from resources/prep/jupyterhub.md rename to ohw22/ev/prep/jupyterhub.md index 8b886900..93a27f44 100644 --- a/resources/prep/jupyterhub.md +++ b/ohw22/ev/prep/jupyterhub.md @@ -1,4 +1,11 @@ -# JupyterHub +# Jupyter and the Hub + +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: ## Jupyter notebooks and the Jupyter ecosystem @@ -20,7 +27,7 @@ We encourage you to use our shared JupyterHub resources for running all the tuto ## How do I access the shared cloud environment? -Access to our shared cloud environment is easy. Just click on [https://ohw.pilot.2i2c.cloud](https://ohw.pilot.2i2c.cloud) +Access to our shared cloud environment is easy. Click on [https://ohw.pilot.2i2c.cloud](https://ohw.pilot.2i2c.cloud) ![hub-opening](../img/ohw21-jupyterhub-opening.png) diff --git a/resources/numpy.md b/ohw22/ev/preweek/numpy.md similarity index 100% rename from resources/numpy.md rename to ohw22/ev/preweek/numpy.md diff --git a/resources/pandas.md b/ohw22/ev/preweek/pandas.md similarity index 100% rename from resources/pandas.md rename to ohw22/ev/preweek/pandas.md diff --git a/resources/preweek/python.md b/ohw22/ev/preweek/python.md similarity index 100% rename from resources/preweek/python.md rename to ohw22/ev/preweek/python.md diff --git a/resources/projects/guidelines.md b/ohw22/ev/projects/guidelines.md similarity index 100% rename from resources/projects/guidelines.md rename to ohw22/ev/projects/guidelines.md diff --git a/resources/projects/overview.md b/ohw22/ev/projects/index.md similarity index 83% rename from resources/projects/overview.md rename to ohw22/ev/projects/index.md index b40a5fc6..7be2ee0c 100644 --- a/resources/projects/overview.md +++ b/ohw22/ev/projects/index.md @@ -1,5 +1,12 @@ # Project Overview +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + Collaborative projects are a key component of OceanHackWeek, in which you get to interact with others closely and apply new skills to make something exciting happen: it can be creating tools to streamline access of a particular data source, visualizing some high density data interactively, testing existing models with new data sources, or anything else you may want to do at the intersection of oceanography and data science. ## What is a Hack? @@ -25,3 +32,11 @@ Examples of hacks include: Increasingly, research and software development are conducted by groups of people with diverse skills and backgrounds. We believe this collaborative work leads to more innovative solutions to complex problems. At OceanHackWeek, our goal is to explore with you some of the skills needed to navigate technical and social challenges of working in these kinds of collaborative settings. We believe the best way to do so is to provide opportunities for you to gain hands-on experience in working together with others on a well-defined problem related to ocean sciences. + +```{toctree} +:maxdepth: 2 +:caption: OceanHackWeek 2022 (OHW22) +:hidden: + +steps.md +``` \ No newline at end of file diff --git a/resources/projects/steps.md b/ohw22/ev/projects/steps.md similarity index 76% rename from resources/projects/steps.md rename to ohw22/ev/projects/steps.md index 5fd2a1fb..981fe5c0 100644 --- a/resources/projects/steps.md +++ b/ohw22/ev/projects/steps.md @@ -1,10 +1,17 @@ -# Hacking at OHW21 +# Hacking at OHW22 + +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: ## How will the projects be conducted? -We have put together the [Project proposal form](https://docs.google.com/forms/d/1Q71S1Rae7U_V5BrcSBOiXU1VvNmv7wsjNKBdG5wCEv0/edit) that includes a list of questions that walk you through the few things to consider while setting up a project. Feel free to bounce ideas and form groups in the `#ohw21_project` channel prior to the event, and submit the proposal form when you think you/your team is ready. +We have put together a [few questions](https://github.com/oceanhackweek/discussions/discussions/categories/ohw22-project-planning) that can help you propose a project in [GitHub discussions](https://github.com/oceanhackweek/discussions/discussions/categories/ohw22-project-planning). -On Tuesday August 3 we will have a brief “project setup” session for an overview of all projects already proposed up to that point, and give another opportunity to pitch new ideas that may be formed throughout the day. The deadline to submit project proposals is 3pm PDT / 6pm EDT / 22:00 UTC that day. +On Monday August 15th we will have a brief “project setup” session for an overview of all projects already proposed up to that point, and give another opportunity to pitch new ideas that may be formed throughout the day. The deadline to submit project proposals is 3pm PDT / 6pm EDT / 22:00 UTC that day. ## Tips for getting started diff --git a/resources/schedule.md b/ohw22/ev/schedule.md similarity index 95% rename from resources/schedule.md rename to ohw22/ev/schedule.md index 7de6c58f..454c2d6c 100644 --- a/resources/schedule.md +++ b/ohw22/ev/schedule.md @@ -1,18 +1,28 @@ # Schedule -OceanHackWeek 2021 will take place August 3-6. *Pre-hackweek OPTIONAL sessions* will be on July 29-30 as a 1-hour session each day ([see below for details](#pre-hackweek-optional-check-ins)). +:::{admonition} Updates in progress +:class: warning +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + +OceanHackWeek 2022 will take place August 15-19. + +With a global virtual event and many satellites, this schedule is still very much under development. The global virtual event will be meeting from 11-2 Pacific, and most satellites are planning at least part of their day around that time block to encourage cross-satellite interaction. + + - + diff --git a/ohw22/ev/tutorials/getting_started.md b/ohw22/ev/tutorials/getting_started.md new file mode 100644 index 00000000..4f872402 --- /dev/null +++ b/ohw22/ev/tutorials/getting_started.md @@ -0,0 +1,15 @@ +# Getting started on tutorials + +## Introduction + +Tutorials will be run live as Jupyter notebooks on the [OceanHackWeek JupyterHub ("The Hub"), https://oceanhackweek.2i2c.cloud](https://oceanhackweek.2i2c.cloud) in your browser. The instructor and all participants can be running their own copies of the notebooks in their Hub account, with files cloned from the OHW source in GitHub. + +Below are instructions for getting the tutorials started on the the Hub in your browser, and updating the tutorials files with the latest version from GitHub. + +The schedule of tutorials is available [here](../../schedule/#main-virtual-event), and links to tutorial materials and some background resources will be available there as well. + +## How do I get the tutorial repository into the Hub? + +For the tutorials, we recommend the use of [nbgitpuller](https://jupyterhub.github.io/nbgitpuller/) to clone and pull the tutorial repository, [https://github.com/oceanhackweek/ohw-tutorials](https://github.com/oceanhackweek/ohw-tutorials), or update the clone you already have. Use [this magical nbgitpuller link](https://ohw.pilot.2i2c.cloud/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Foceanhackweek%2Fohw-tutorials&urlpath=lab%2Ftree%2Fohw-tutorials%2F&branch=master) to accomplish this clone or update. + +See this [extended discussion](../../prep/jupyterhub/#how-do-i-get-the-tutorial-repository) for more details about `nbgitpuller` and the alternative approach relying on `git` commands and `GitHub` workflows. diff --git a/ohw22/ev/tutorials/index.md b/ohw22/ev/tutorials/index.md new file mode 100644 index 00000000..ee69a1bf --- /dev/null +++ b/ohw22/ev/tutorials/index.md @@ -0,0 +1,22 @@ +# Tutorials + +:::{admonition} Updates in progress +:class: warning + +The resources are actively being updated! Some parts are still out of date, and is the content from last year. In the meantime, please watch out for references to 2021 ("OHW21") or links that don't work. + +::: + +## Getting Started + +[Getting Started](getting_started.md) + + + +```{toctree} +:maxdepth: 2 +:caption: OceanHackWeek 2022 (OHW22) +:hidden: + +Getting Started +``` \ No newline at end of file diff --git a/ohw22/index.md b/ohw22/index.md index d50183f5..175d3aed 100644 --- a/ohw22/index.md +++ b/ohw22/index.md @@ -12,15 +12,6 @@ OceanHackWeek 2022 will happen from **August 15-19, 2022**. The workshop will ta The OceanHackWeek program consists of hands-on tutorials, visual presentations, and collaborative hack projects throughout a 5-day period. Participants can apply for being in one of the regional satellites or the virtual global event. Regional satellite events are connected closely with the virtual global event, while providing additional collaboration and networking opportunities on a regional basis. -See the [OHW21 program](https://oceanhackweek.github.io/ohw-resources) (a hybrid event) to get a better sense of the usual activities and how they're organized. - -:::{admonition} Join us at OceanHackWeek 2022! -:class: note - -**Applicants have been notified and participants should expect further communications** - -::: - ## A Global Virtual Event and Six Regional Satellites Global and satellite participants will have access to the same online resources and common communication channels, and will be encouraged to engage with one another. @@ -35,6 +26,13 @@ Global and satellite participants will have access to the same online resources The [**Global Virtual Event**](global/index) will take place through synchronous 3-hour periods per day and asynchronous collaboration. It will include all interactive OHW22 tutorials delivered in real time, project brainstorming, and other OHW-wide community building activities. The tutorials will be recorded and posted after the presentation. The exact hours of this global event are still being finalized, but we anticipate the activity time to be structured around the US Pacific Time (UTC-7) this year. ### Regional Satellites + +```{image} ../assets/images/OHW21-collage-the3groups.jpg +:alt: OHW21 in person and on Zoom +:width: 180px +:align: left +``` + [**Six Regional Satellite Events**](satellites) will take place this year to serve as local connecting points for project work, community building, and engaging potential future OHW organizers. [OHW22 organizers](organizers) invite participants geographically located near one of these regional satellites or interested in virtual participation in a specific satellite to select one of these events. The satellite events may be virtual or in-person and take different formats depending on the event organizers. In-person participants may be required to be fully vaccinated against COVID-19. In coordination with the OHW Northwest satellite event, there will be a **[3-week-long undergraduate summer program “Data Science in Oceanography”](satellites/#undergraduate-summer-program-data-science-in-oceanography) taking place in-person on August 8-26 at the University of Washington**. This program will provide opportunities for undergraduate students in data-driven research in oceanography. See [the satellite event page](./seattle/index.md) for detail. @@ -94,8 +92,21 @@ In coordination with the OHW Northwest satellite event, there will be a **[3-wee :caption: OceanHackWeek 2022 (OHW22) :hidden: -Information for Applicants Global Virtual Event Regional Satellite Events +Schedules +Logistics +Preparation +Tutorials +Projects +Code of Conduct Organizers ``` + +```{toctree} +:caption: OHW22 Other Information +:hidden: + +../website/updates +Information for Applicants +``` diff --git a/resources/index.md b/resources/index.md deleted file mode 100644 index 18e261f8..00000000 --- a/resources/index.md +++ /dev/null @@ -1,62 +0,0 @@ -# Resources - -Welcome to [OceanHackWeek](about/index.md) 2021 (OHW21)! OHW21 is a 4-day collaborative learning experience taking place August 3-6, 2021, as a hybrid in-person and virtual event. It is aimed at exploring, creating and promoting effective computation and analysis workflows for large and complex oceanographic data. It includes tutorials, data exploration, software development, collaborative projects and community networking. At our [general web site (https://oceanhackweek.github.io)](https://oceanhackweek.github.io) you can read more about OceanHackWeek, including the [OHW21 organizing committee](https://oceanhackweek.github.io/our-team.html) and links to [events from previous years](https://oceanhackweek.github.io/pasthackweeks.html). - -**This site is being actively updated this week (week before OHW21)! Some parts are still out of date, and is the content from last year. We'll keep you posted about updates via Slack. In the meantime, please watch out for references to 2020 ("OHW20") or links that don't work.** - -To make sure that OHW21 will be a welcoming environment for everyone, please read our [Code of Conduct](about/code-of-conduct.md) carefully as part of your preparation. We expect all participants to adhere to the Code of Conduct in all interactions throughout the hackweek. - -## Schedules - -There are three different schedules, corresponding to the **in-person event**, the **main virtual event** and the **Oceania virtual event**. The "Oceania" virtual event is intended to accommodate participants from Australia to India. You will be asked to choose between the two virtual groups. Go to [the Schedule page for details](schedule.md). - -## Preparation - -We will use a [JupyterHub](https://jupyter.org/hub)-based online environment for all OceanHackWeek computational activities, including tutorials; this environment supports both Python and R. You will need a robust internet connection and a capable laptop or desktop computer. **On July 29 and 30, we will offer short "pre-hackweek" optional sessions to answer questions on the basics of Git, GitHub, Jupyter and core R and Python scientific libraries, and OceanHackWeek in general. The schedule is available in the [Schedule page](schedule.md#pre-hackweek-optional-check-ins), and the Zoom link will be sent via Slack.** - -We will use Slack, Zoom and GitHub as our primary communication and content delivery platforms. The week before OceanHackWeek you will receive via email an invitation to join the OceanHackWeek GitHub organization, [https://github.com/oceanhackweek/](https://github.com/oceanhackweek/). - -```{toctree} -:maxdepth: 2 -:hidden: -:caption: Logistics - -logistics/overview -logistics/getting_help -logistics/coffeebreaks -``` - -```{toctree} -:hidden: -:caption: Preperation - -prep/git -prep/github -prep/jupyterhub -prep/conda - -``` - -```{toctree} -:hidden: -:caption: Tutorials - -tutorials/getting_started - -``` - -```{toctree} -:hidden: -:caption: Projects - -projects/overview -projects/steps - -``` - -```{toctree} -:hidden: -:caption: Website - -website/updates -``` diff --git a/resources/logistics/getting_help.md b/resources/logistics/getting_help.md deleted file mode 100644 index b72d6208..00000000 --- a/resources/logistics/getting_help.md +++ /dev/null @@ -1,26 +0,0 @@ -# Getting Help - -We know how overwhelming all of this information can be. Here is some for asking questions and figuring out where to turn for help. - -You can ask anything on the Slack `#ohw21-general` channel, any time. Organizers and helpers are monitoring this channel, and some of your fellow hackweek participants may be able to help you! Also, feel free to send a direct message on Slack to any of the organizers or helpers. - -## Helpdesk - -We've set up the `#ohw21-helpdesk` Slack channel to ask technical questions (or other types of questions, if you'd like). We will set up some helpdesk Slack user group that you can use to tag your question as, say, about Python. We'll list and describe those groups here. You are also welcome to direct message the helpers if you don't feel comfortable asking questions publicly. - -## During tutorials - -- Ask questions on Slack! Use the `#ohw21-tutorials` channel to ask questions or check out answers to questions others have posed. We will use this same channel every day. Several of us will be monitoring this channel and addressing your questions throughout the tutorials -- **Vote up** questions from others to help the moderators prioritize which questions to ask the speaker during tutorials. -- Tutorial moderators will mark questions that are best answered by the instructor and ask helpers (and anyone else!) to answer the rest in real time. Then when the instructor ask if there are questions the moderators will read those reserved for the instructor. -- Zoom Chat will **not** be available. Ask on Slack! -- You will be muted at the start of the tutorial presentation. The moderator will review questions on Slack and ask the questions to the instructor during Q&A time. - -## Projects - -See the [Projects Getting Started page](../projects/steps.md). Feel free to post a question on the `#ohw21_project` channel, too. - -## Reporting a Code of Conduct violation - -Harassment and other [Code of Conduct violations](../conduct.md) reduce the value of OceanHackWeek for everyone. If someone makes you or anyone else feel unsafe or unwelcome, please report it as soon as possible to one of the instructors. You can make a report either personally or anonymously. **Anonymous reports can be made [here](https://oceanhackweek.wufoo.com/forms/zep2ybt1swlulc/).** - diff --git a/resources/logistics/overview.md b/resources/logistics/overview.md deleted file mode 100644 index bf4803c5..00000000 --- a/resources/logistics/overview.md +++ /dev/null @@ -1,34 +0,0 @@ -# Logistics Overview - -Some of you will participate in person at the [Bigelow Laboratory for Ocean Sciences](https://www.bigelow.org/) in Maine (US), and others will participate virtually from time zones all over the world. As we have learned throughout the pandemic, each of these gathering styles has strengths and weaknesses. We are committed to providing an engaging and full experience for everyone and will strive to facilitate cross communication and collaboration across all participants. - -## Time - -OceanHackWeek 2021 will take place August 3-6. *Pre-hackweek OPTIONAL sessions* will be on July 29-30 as a 1-hour session each day. - -**In-person participants** will gather for full days, 9am - 5pm EDT. While **virtual participants** may choose to engage primarily with this group and schedule via Zoom and Slack, we strongly encourage you to join the program designed specifically as a virtual event. The virtual event will be split into two schedules and groups based on the distribution of participant time zones, in a 3-hour daily block of formal, live activities. The **larger virtual event** will take place 11:00am - 2:00pm PDT / 18:00 - 21:00 UTC, *except the first day when we will start 30 minutes earlier*. The **“Oceania” virtual event** is intended to accommodate participants from Australia to India and will take place 12:00pm - 3:00pm AEST / 2:00 - 5:00 UTC. You will be asked to choose between the two virtual groups. - -Detailed schedules are available [Schedule page](../schedule.md). - -## Channel of communication: Slack - -We will use the [OceanHackWeek Slack workspace](http://oceanhackweek.slack.com/) as the main channel of communication before, during, and after the hackweek. You should have received an invitation to join this workspace. If you haven't seen it in your inbox, check your spam folder, or email us at *oceanhkw@uw.edu*. - -[Go directly from a channel or direct message chat into a voice or video chat](https://slack.com/help/articles/216771908-Make-calls-in-Slack), with screen-sharing capability. This will be particularly useful during hack project time. - -## OHW JupyterHub ("The Hub") and GitHub - -- OHW JupyterHub ("The Hub"): [https://ohw.pilot.2i2c.cloud](https://ohw.pilot.2i2c.cloud) -- OHW GitHub organization: [https://github.com/oceanhackweek](https://github.com/oceanhackweek) - -## Tutorials broadcasting - -We will use Zoom to broadcast all tutorials. The Zoom link will be distributed via Slack. - -## Hack projects - -See [Project overview](../projects/overview.md) and [Hacking at OHW21](../projects/steps.md) for more info. - -## Getting Help - -See the [Getting Help page](getting_help.md) for guidance and links to have your questions answered or connect with organizers with concerns. diff --git a/resources/prep/conda_original.md b/resources/prep/conda_original.md deleted file mode 100644 index 83909e09..00000000 --- a/resources/prep/conda_original.md +++ /dev/null @@ -1,96 +0,0 @@ -# Conda and installing Python and R environments - -### Overview - -### What is Conda? -[**Conda**](http://conda.pydata.org/docs/) is an **open source `package` and `environment` management system for any programming languages, but very popular among python community,** - -The Hub is pre-configured with a customized "environment" of Python and R packages designed to run all the tutorial notebooks, and supporting a broad range of oceanographic applications. This environment is created and managed using the open-source [**Conda** package and environment management system](https://docs.conda.io) for installing multiple versions of software packages together with their dependencies, and convenient switching between environments. Conda runs on Windows, macOS, and Linux: *"Conda quickly installs, runs, and updates packages and their dependencies. Conda easily creates, saves, loads, and switches between environments on your local computer. It was created for Python programs but it can package and distribute software for any language."* - -Conda may be used on your computer as well as the Hub ... - -https://github.com/oceanhackweek/ohw20-tutorials/blob/master/environment.yml - -For Python, the advantage of conda compared to `pip` is that it has a built in environment management system as well as the management of binaries, and non-Python dependencies. - -You do not need administrative or root permissions to install conda if you select a user-writable installation location. - - -In the previous lesson we showed you a cloud-based environment for our work during the hackweek. What happens after the event when you want to go home and work with all the libraries we showed you? You will likely also want to have a functioning version of Python on your local laptop if that is not already in place. So this lesson takes you through our recommended procedure for doing that. We suggest you get this set up in advance so that we can help you troubleshoot when you arrive. - -### Python Software - -Python software is distributed as a series of *libraries* that are called within your code to perform certain tasks. There are many different collections, or *distributions* of Python software. Generally you install a specific distribution of Python and then add additional libraries as you need them. There are also several different *versions* of Python. The two main versions right now are 2.7 and 3.7, although Python 2.7 will not be supported past 2020. Some libraries only work with specific versions of Python. - -So even though Python is one of the most adaptable, easy-to-use software systems, you can see there are still complexities to work out and potential challenges when delivering content to a large group. Therefore we have a number of different ways that we are trying to simplify this process to maximize your learning during the hackweek. - -We also provide instructions for using [Anaconda](https://www.continuum.io), which is our recommended Python distribution, for installing and working with Python on your local computer. We can assist in setting up "conda" environments that will simplify the gathering of Python libraries and version specific to the tutorial you are working on. - -### Installing Miniconda - -##### Windows -Click [here](http://conda.pydata.org/miniconda.html) to download the proper installer for your Windows platform (64 bits). -We recommend to download the Python 3 version of Miniconda. You can still create Python 2 environments using the Python 3 version of Miniconda. - -When installing, you will be asked if you wish to make the Anaconda Python your default Python for Windows. -If you do not have any other installation that is a good option. If you want to keep multiple versions of python on your machine (e.g. ESRI-supplied python, or 64 bit versions of Anaconda), then don't select the option to modify your path or modify your windows registry settings. - -##### Linux and OSX -You may follow manual steps from [here](http://conda.pydata.org/miniconda.html) similar to the instructions on Windows (see above). Alternatively, you can execute these commands on a terminal shell (in this case, the bash shell): - -```bash -# For MacOSX -url=https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh -# For Linux -url=https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -wget $url -O miniconda.sh -bash miniconda.sh -b -p $HOME/miniconda -export PATH="$HOME/miniconda/bin:$PATH" -conda update conda --yes -``` - -### Installing Anaconda (Optional) - -*NOTE: If you don't have time or disk space for the entire distribution do not install Anaconda. Install only [Miniconda](http://conda.pydata.org/miniconda.html), a bootstrap version of Anaconda, which contains only Python, essential packages, and conda. We will provide an environment file to install all the packages necessary for the hackweek.* - -[Anaconda](https://www.anaconda.com/distribution/) is a data science platform that comes with a lot of packages. At its core, Anaconda uses the conda package management system. - -The list of packages included can be found [*here*](https://docs.anaconda.com/anaconda/packages/pkg-docs) - -1. To install Anaconda, please click on the link below for your operating system, and follow the instructions on the [site](https://www.anaconda.com/download/). -2. Once Anaconda installation step is finished run `python` in the command line to test if Anaconda is installed correctly. **Note: For windows, please use the Anaconda prompt as the command line. It should be installed with your installation of Anaconda** -If Anaconda is installed correctly, you should have this prompt, which emphasizes **Anaconda**: - -```bash -$ python -Python 3.7.3|Anaconda custom (x86_64)| (default, Mar 27 2019, 22:11:17) -... -``` - -### Installing Python - -We will be using Python 3.6 or 3.7 during the week (either will work). Since Anaconda (on Linux) expects you to work in the "bash" shell, if this is not already your default shell, you need to set it to be so (use the "chsh -s /bin/bash" command to change your default shell to bash) or just run an instance of bash from the command line before issuing "Conda" commands (/bin/bash or where it is located on your system). - -If you are already familiar with Python 2.7, you can take a look at the syntax differences [here](http://sebastianraschka.com/Articles/2014_python_2_3_key_diff.html), but the main point to remember is to put the print statements in parentheses: -```python -print('Hello World!') -``` - - -``` bash -$ conda create -n py37 python=3.7 -``` - -To use Python 3.7: - -``` bash -$ conda activate py37 -``` - -To check if you have the correct version: - -``` bash -$ python --version -``` - - diff --git a/resources/tutorials/getting_started.md b/resources/tutorials/getting_started.md deleted file mode 100644 index 19b189a9..00000000 --- a/resources/tutorials/getting_started.md +++ /dev/null @@ -1,76 +0,0 @@ -# Getting started on tutorials - -**THIS PAGE HAS NOT BEEN UPDATED FROM OHW20 YET. CHECK BACK SOON!** - -## Introduction - -Most tutorials will be run live as Jupyter notebooks on the [OceanHackWeek JupyterHub ("The Hub")](https://ocean.hackweek.io/) in your browser. The instructor and and all participants can be running their own copies of the notebooks in their Hub account, with files cloned from the OHW source in GitHub. - -Below are instructions for getting the tutorials started on the the Hub in your browser, and updating the tutorials files with the latest version from GitHub. The schedule of tutorials is available [here](../schedule.md), and links to tutorial materials and some background resources are availabe elsewhere in the Tutorials section. - - -## Pre-Hackweek tutorials - -- **Git and GitHub, including the Git fork - clone "workflow".** [Presentation slides (pdf)](https://github.com/oceanhackweek/ohw-preweek/tree/master/git-github-survival-guide") — [video](https://youtu.be/7nYFRixSV2c) -- **Jupyter and Scientific Python basics: numpy, pandas, matplotlib.** [Jupyter notebooks](https://github.com/oceanhackweek/ohw-preweek/tree/master/data-analysis-modules) — [video](https://youtu.be/CTUAgpvfze0) - - -## Start the Hub in your browser - -### Step 1 -Navigate to the [OceanHackWeek Hub, https://ocean.hackweek.io/](https://ocean.hackweek.io/). - -### Step 2 -Sign in using your GitHub account, if you are not already signed in. (First time only: Grant the OceanHackWeek Organization permissions - this grants you access to the cloud computing environment for the Hackweek.) - -### Step 3 -Start the "Oceanhackweek" computing environement (the Oceanhackweek "image"). It may take up to a minute or so to start up. - - -## Upload (`git clone`) a copy of the `oh20-tutorials` GitHub repository and follow along -This basic workflow allows you to follow along with tutorials with your own live copy of the tutorials notebooks while staying up-to-date with any changes made to the master tutorials repository, [ohw20-tutorials](https://github.com/oceanhackweek/ohw20-tutorials). - -### Shortcut -The first time you try to upload (`git clone`) the `ohw20-tutorials` repository, launch a new terminal, then enter: - -```bash -git clone https://github.com/oceanhackweek/ohw20-tutorials.git -``` - -Now you have a new `ohw20-tutorials` directory under your "home" directory, `/home/jovyan`. You're good to go! - -### Longer description - Step 1 -Navigate to the [tutorial repository on GitHub](https://github.com/oceanhackweek/ohw20-tutorials). - -Clone the tutorial to the Hub environment. You can easily copy the link to a repository by selecting the green "clone or download" dropdown (making sure the pop up says "Clone with HTTPS") and hitting the clipboard icon, which will automatically copy the link for you. - -Launch a terminal using the "plus" sign in the upper left corner of your JupyterHub: - -![Jupyter Launch Terminal](../img/Jupyter-LaunchNewTerminal.jpg) - -then execute the `git clone` statement: - -```bash -git clone https://github.com/oceanhackweek/ohw20-tutorials.git -``` - -A new `ohw20-tutorials` directory will be created, holding the repository clone. - - - -### Step 2 -Follow along by opening and running the tutorial notebooks. You can save changes within your clone (such as edits to a notebook) or add other files, then download a copy to your local machine if you'd like. - -### Step 3 -Update your Hub copy with any changes to the `origin` repository. If you have saved changes within your local copy of the notebook or added other files, this may cause conflicts (*ask us questions if you run into problems!*). Fetch and merge (using `git pull`) the latest changes from the `origin` remote. - -```bash -git pull origin -``` - -These instructions assume you're working on the default `master` branch. - -**Please note: the OceanHackWeek JupyterHub (the Hub) should not be relied upon to save your files beyond the duration of the hackweek, and will be removed a couple of weeks after the hackweek. Thus, for any non-repository changes or repository changes that have not been pushed to GitHub, you MUST complete Step 3 to save the files to your local machine if you would like continued access to them.** - ----- -Adapted from [https://icesat-2hackweek.github.io/learning-resources/tutorials/getting_started/](https://icesat-2hackweek.github.io/learning-resources/tutorials/getting_started/). Originally from [https://medium.com/sweetmeat/how-to-keep-a-downstream-git-repository-current-with-upstream-repository-changes-10b76fad6d97](https://medium.com/sweetmeat/how-to-keep-a-downstream-git-repository-current-with-upstream-repository-changes-10b76fad6d97) diff --git a/resources/website/updates.md b/resources/website/updates.md deleted file mode 100644 index f5dbb8c4..00000000 --- a/resources/website/updates.md +++ /dev/null @@ -1,2 +0,0 @@ -```{include} ../../_InstructionSiteUpdates.md -``` diff --git a/website/updates.md b/website/updates.md new file mode 100644 index 00000000..84a497b4 --- /dev/null +++ b/website/updates.md @@ -0,0 +1,2 @@ +```{include} ../_InstructionSiteUpdates.md +```