Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions about/code-of-conduct.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 2 additions & 1 deletion index.md
Original file line number Diff line number Diff line change
Expand Up @@ -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/index.md>
OHW22 Schedules <ohw22/ev/schedule.md>
% resources/index.md
% posts
```
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
46 changes: 46 additions & 0 deletions ohw22/ev/logistics/getting_help.md
Original file line number Diff line number Diff line change
@@ -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/).**

43 changes: 43 additions & 0 deletions ohw22/ev/logistics/index.md
Original file line number Diff line number Diff line change
@@ -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
```
40 changes: 28 additions & 12 deletions resources/prep/conda.md → ohw22/ev/prep/conda.md
Original file line number Diff line number Diff line change
@@ -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,**
Expand Down Expand Up @@ -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
Expand All @@ -51,30 +69,28 @@ 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:

``` bash
$ python --version
```


30 changes: 21 additions & 9 deletions resources/prep/git.md → ohw22/ev/prep/git.md
Original file line number Diff line number Diff line change
@@ -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:
Expand Down Expand Up @@ -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.**
```


Expand All @@ -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.
Expand All @@ -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

Expand Down Expand Up @@ -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/)
```

Expand Down Expand Up @@ -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.
Expand All @@ -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.
```

Expand Down
15 changes: 11 additions & 4 deletions resources/prep/github.md → ohw22/ev/prep/github.md
Original file line number Diff line number Diff line change
@@ -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?

Expand All @@ -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

Expand Down
Loading