<!-- .slide: data-background="https://raw.githubusercontent.com/maxulysse/maxulysse.github.io/main/assets/img/svg/green_white_bg.svg" -->
<a href="https://www.nf-co.re"><img src="https://i.imgur.com/hEDjpCs.png" width="65%"><img></a>
# π Transition to DSL2 π
_27th-29th October 2021_
<img src="https://openmoji.org/data/color/svg/E040.svg" width=50> @nf-core / <img src="https://openmoji.org/data/color/svg/E045.svg" width=50> @nf-core
---
# Overview
- π What is nf-core?
- ποΈ Aim and structure of this hackathon
- π
Schedule
- πΊ Social activities
---
# <a href="https://www.nf-co.re"><img src="https://nf-co.re/assets/img/logo/nf-core-logo-darkbg.svg" width="65%"><img></a>
A community effort to collect a curated set of analysis pipelines built using [Nextflow](https://nextflow.io)
---
# <a href="https://www.nf-co.re"><img src="https://nf-co.re/assets/img/logo/nf-core-logo-darkbg.svg" width="65%"><img></a>
π [Guidelines](https://nf-co.re/developers/guidelines)
π οΈ [Tools](https://github.com/nf-core/tools)
π¨βπ§ [Pipelines](https://nf-co.re/pipelines)
---
<a href="https://www.nf-co.re"><img src="https://media.springernature.com/lw685/springer-static/image/art%3A10.1038%2Fs41587-020-0439-x/MediaObjects/41587_2020_439_Fig1_HTML.png?as=webp" width="50%"><img></a>
---
# <a href="https://www.nf-co.re"><img src="https://nf-co.re/assets/img/logo/nf-core-logo-darkbg.svg" width="65%"><img></a>
- Pipelines:
- β
32 Released
- π§ 16 Under development
- π 5 Archived
---
# :muscle: Community :muscle:
<img src="https://i.imgur.com/ouT5gPZ.png" width="50%">
<div>
<p align="center">
<img src="https://i.imgur.com/BT9b6Zc.png" width="30%">
<img src="https://i.imgur.com/d2cDGDi.png" width="38%">
</p>
</div>
<div>
<p align="center">
<img src="https://i.imgur.com/aM0ka15.png" width="30%">
<img src="https://i.imgur.com/0H1j8VD.png" width="36%">
</p>
</div>
<p style="font-size:10px;text-align:right">
Taken from https://nf-co.re/stats on 2021-10-26
</p>
---
# Aim and structure of this Hackathon
---
# REMINDER
Attendence to this event assumes adherence to the nf-core event [Code of conduct](https://nf-co.re/code_of_conduct)!
---
# Main Theme: Transition to DSL2!
What is [Nextflow DSl2](https://www.nextflow.io/docs/latest/dsl2.html)?
> Nextflow provides a syntax extension that allows the definition of module libraries and simplifies the writing of complex data analysis pipelines
```
nextflow.enable.dsl=2
```
---
# nf-core DSL2 definitons
- Components:
- **Modules**: Reusable module units
- **Subworkflows**: Reusable chain of modules
- **Workflows**: End-to-end combination of modules/subworkflows
---
# DSL2 modules on nf-core
- **nf-core/modules**:
- Centralised repository of standardised, reproducible, self-contained, tool wrappers
- Each module can be re-used in multiple pipelines
- Template & guidelines
- 287 modules, 69 contributors and counting...
---
# DSL2 pipelines on nf-core
- **Pipeline template**:
- Brand spanking new and standardised layout
- Massive reduction in boilerplate code in main scripts
- Supports DSL2 out-of-the-box
- Existing pipelines being ported
---
# DSL2 tooling on nf-core
- **nf-core/tools**:
- Create pipelines and module template from scratch
- Commands to list, lint, test, update...
- Community maintained
---
# TODO
- **Main tasks**: _Day 1-3_
- Add 'local' modules to nf-core/modules
- Contribute to existing DSL2 pipeline conversion (optional)
- Discussions for future improvements
- General contributions to framework - docs, nf-core/tools etc.
- **Pair-programming**: _Day 1_
- Live demo for contributing to nf-core/modules
---
# nf-core/modules
- [Event page](https://nf-co.re/events/2021/hackathon-october-2021#prerequisites)
- Recorded talks:
- [Contributing to nf-core/modules](https://www.youtube.com/watch?v=xuNYATGFuw4)
- [DSL2 pipeline structure](https://www.youtube.com/watch?v=0xjc7PkF1Bc)
- [nf-core/bytesize](https://nf-co.re/events)
<blockquote style="font-size:12pt">
π Important: Test locally as much as possible! Let's not upset GitHub Actions ;)
</blockquote>
---
# Existing pipeline contribution
- **Single-cell**: _Gisela Gabernet_
- scrnaseq, scflow
- **Variant calling**: _Maxime Garcia, Friederike Hanssen_
- sarek, raredisease
- **Epigenetics**: _Harshil Patel, Jose Espinosa_
- chipseq, atacseq
- **Microbial genomics**: _Daniel Straub_
- mag, ampliseq, bacass
- **Ancient DNA**: _James Fellows Yates_
- eager
---
# HELP!
- Useful links:
- [How we will work](https://nf-co.re/events/2021/hackathon-october-2021#how-we-will-work)
- [Hackathon project board](https://github.com/orgs/nf-core/projects/20)
- [Reviewing checklist](https://nf-co.re/developers/adding_modules#new-module-guidelines-and-pr-review-checklist)
- Organise yourselves and gather in well...Gather town!
- Questions
- #modules
- #hackathon-oct2021-public
---
# HAVE FUN!

---
# Schedule
---
# General Schedule
_See [event page](https://nf-co.re/events/2021/hackathon-october-2021) for detailed overview_
- Check-in/Check-out
- Team progress summary (slides!)
- Handover to next time zone
- Hack!
- Group catch-up
- Team progress summary (slides!)
- Hack!
- Check-out/check-in
- Team progress summary (slides!)
- Handover to next time zone
---
# General Schedule
- π€ Timezone handover coordinators!
- **EMEA**: Matthias HΓΆrtenhuber (@mashehu)
- **Americas**: Edmund Miller (@emiller88)
- **Asia-Pacific**: Zhaowei Yang (@yzhaowei), Bhargava Morampalli (@bhargava-morampalli)
π£ Listen out when they call you to the lecture hall
---
# Additional Schedule
- Day one: pair-programming (suggested times)
- Only those who signed up!
- 10:00-11:00 CEST: EMEA
- 18:00-19:00 CEST: Americas
- Day two:
- 17:30-19:00 CEST: Quiz time!
---
# Social Activities
---
# Social Activities
Breaks in the Cafeteria (at 11:30, 15:00 and 19:30 CEST)

---
# Social Activites
Happy hour/Beer-O-Clock (at 17:30 CEST)

---
# Social Activities
nf-core bingo!

_Find the instructions on the nf-core/events hackathon page!_
---
# Social Activities
Find the (11) hidden socks!

_Make screenshots when you find them!_
---
# Social Activities
Where's ~~Wally~~ nf-core?
_Who is the mysterious `nf-core pirate` person?_

---
# Resources
- Event: [https://nf-co.re/events](https://nf-co.re/events/2021/hackathon-october-2021)
- GitHub: [https://github.com/nf-core](https://github.com/nf-core)
- Docs: [https://nf-co.re](https://nf-co.re) > Developers
- Slack: [https://nf-co.re/join](https://nf-co.re/join)
- gather.town: [click here](https://gather.town/app/BVS7xRRImcxA2kgK/nf-core-hackathon-2021-10)
- Safety officers:
- Renuka Kudva
- Cris TuΓ±Γ
- Michael Heuer
---
# Thanks
- CZI!
- Renuka!
- Organising team!
- You!
---
## Need help?
<!-- .slide: data-background="https://raw.githubusercontent.com/maxulysse/maxulysse.github.io/main/assets/img/svg/green_white_bg.svg" -->
Chat: [`https://nf-co.re/join`](https://nf-co.re/join) <img src="https://cdn.brandfolder.io/5H442O3W/at/pl546j-7le8zk-6gwiyo/Slack_Mark.svg" width=7.5%></img>`#hackathon-oct2021-public`
gather.town: [https://gather.town/app/BVS7xRRImcxA2kgK/nf-core-hackathon-2021-10](https://gather.town/app/BVS7xRRImcxA2kgK/nf-core-hackathon-2021-10)
<div style="margin-top:0.1em"> </div>
<p align="center">
Follow nf-core on
<a href="https://www.twitter.com/nf_core"><img src="https://openmoji.org/data/color/svg/E040.svg" width=6%></a>
<a href="https://github.com/nf-core"><img src="https://openmoji.org/data/color/svg/E045.svg" width=6%></a>
<a href="https://www.youtube.com/c/nf-core"><img src="https://openmoji.org/data/color/svg/E044.svg" width=6%></a>
</a>
</p>
<a href="https://nf-co.re/" style="color: #000000; font-family:Monaco, monospace; font-weight:bold;">https://nf-co.re/</a>
<div style="display: flex; justify-content: space-evenly; align-items:center;">
<img src="https://chanzuckerberg.com/wp-content/themes/czi/img/logo.svg" width=15%>
<div style="font-style:italic; font-size: 0.5em; color: #666;">Icons:<br><a href="https://openmoji.org">openmoji.org</a>
</div>
</div>
---
# Now, HACK!

<style>
.reveal section img { background:none; border:none; box-shadow:none; }
body {
background-image: url(https://raw.githubusercontent.com/nf-core/logos/master/nf-core-logos/nf-core-logo-square.svg);
background-size: 7.5%;
background-repeat: no-repeat;
background-position: 3% 96%;
background-color: #181a1b;
}
.reveal body {
font-family: 'Roboto', sans-serif;
font-weight: 300;
color: white;
}
.reveal p {
font-family: 'Roboto', sans-serif;
font-weight: 300;
color: white;
}
.reveal h1 {
font-family: 'Roboto', sans-serif;
font-style: bold;
font-weight: 400;
color: white;
font-size: 62px;
}
.reveal h2 {
font-family: 'Roboto', sans-serif;
font-weight: 300;
color: white;
}
.reveal h3 {
font-family: 'Roboto', sans-serif;
font-style: italic;
font-weight: 300;
color: white;
}
.reveal p {
font-family: 'Roboto', sans-serif;
font-weight: 300;
color: white;
}
.reveal li {
font-family: 'Roboto', sans-serif;
font-weight: 300;
color: white;
}
.reveal pre {
background-color: #272822 !important;
display: inline-block;
border-radius: 7px;
color: #aaaba9;
}
.reveal pre code {
color: #eeeeee;
background-color: #272822;
font-size: 100%;
}
.reveal code {
background-color: #272822;
font-size: 75%;
}
.reveal .progress {
color: #24B064;
}
.reveal .controls button {
color: #24B064;
}
.reveal blockquote {
display: block;
position: relative;
width: 90%;
margin: 20px auto;
padding: 5px;
background: rgba(255, 255, 255, 0.05);
box-shadow: 0px 0px 2px rgb(0 0 0 / 20%);
}
</style>
{"metaMigratedAt":"2023-06-16T12:24:34.462Z","metaMigratedFrom":"YAML","title":"nf-core Hackathon Oct 2021 Introduction","breaks":true,"description":"View the slide with \"Slide Mode\".","contributors":"[{\"id\":\"6357fb8d-b0f8-4b7d-9fbe-6d813ad67700\",\"add\":6922,\"del\":2497},{\"id\":\"60ede81b-485d-4b0d-86bf-92161dcd277c\",\"add\":3756,\"del\":2552},{\"id\":\"4c34251a-2801-4765-8472-fa5c6c285389\",\"add\":563,\"del\":72},{\"id\":\"361dff76-5a26-4d26-b3b2-56c5fdc58926\",\"add\":174,\"del\":49}]"}