GCC2021 Developer Training Track
Welcome everybody, and thank you for joining the GCC training week!
Everything you need for this course can be found on this webpage. More information including links to all training materials can be found by clicking on each session. Please adhere to our Code of Conduct, and have fun!
Schedule
For this training week there is no fixed schedule, instead we provide a set of modules for you to choose from.
- This week YOU make the schedule, YOU decide which tutorials to follow, and when to start, stop, and take breaks.
- You do NOT have to complete everything! You can do as many or as few sessions as you want, and focus on the topics most interesting to you! Everything will stay online forever, so you can always come back after GCC and continue learning!
- New to Galaxy? We suggest you start with the “Introduction to Galaxy” module of the Science Track.
- Unsure which tutorial to follow? Feel free to ask us for recommendations in Slack!
Training Modules
Scroll down to see all available tutorials, or jump directly to a module:- Welcome & Practical Information
- Galaxy Tool Development
- Galaxy Training Material Development
- Galaxy Core Development
- Galaxy Architecture Lectures
- Self-Study Galaxy Development
Welcome & Practical Information
Start here. This will cover all the logistics and practical information for this training week.
Lecture
Subtitles By: Saskia Hiltemann, Helena Rasche
Description: Start here; we will go over all the important things to know to get the most out of this workshop
Training Material: Slides
Speaker
Supporting Materials
- Slides: Welcome & Course Information
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #event-gcc2021 - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #event-gcc2021 ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Most of these training sessions require you to have some prior setup to begin them.
Windows
- You will need WSL2 installed
- Having
git
installed will help you for a number of the tutorials which work with Galaxy.
OSX/Linux
- Having
git
installed will help you for a number of the tutorials which work with Galaxy.
Certificates of attendance can be requested after the training week.
Requirements
- Have a registration for the GCC2021 Training Week
- Keep all your Galaxy histories
- We will ask you to provide links to the histories for all sessions you followed
- If a tutorial does not create a Galaxy history (e.g. developer training), keep any other outputs you may create during the training session
- Answer the dailiy icebreakers question on Slack every day
- Be active on Slack!
- Join the Slack channels for every training session you follow this week (links under "supporting materials" at the bottom of each session)
- Let us know when you are starting with a session in the session's dedicated Slack channel
- Talk about the session! Get stuck? Have a question about the science? want to discuss anything? do it in Slack!
- Whenever you finish a session, let us know on Slack that you have completed the tutorial, and let us know what you thought of it!
NOTE: You can follow as few or as many training sessions as you want, we will give you a personalized certificate listing all the sessions you attended.
Request now!
Please fill in this this Certificate Request Form
Deadline: no later than July 11, 2021.
Note: only fill in this form when you have completed all the training session you want to.
Tutorial
Subtitles By: Saskia Hiltemann
Description: This short video gives an overview of the worldwide Galaxy community, and different ways you can get involved! Video created by Beatriz Serrano-Solano.
Training Material: GalaxyProject Home, Galaxy servers, Galaxy Training Network, Support, Galaxy Publications, Galaxy Communities, Events, Mailing Lists, Galaxy Working Groups, GitHub, Gitter Chat, GTN Gitter, PaperCuts, GTN CoFest, Twitter, Twitter
Supporting Materials
- GalaxyProject Home: galaxyproject.org
- Galaxy servers: Find a Galaxy server near you!
- Galaxy Training Network: Start learning Galaxy
- Support: Galaxy Help Forum
- Galaxy Publications: Zotero
- Galaxy Communities: Find and Join a community
- Events: Galaxy Event Horizon
- Mailing Lists: Stay informed of Galaxy activity!
- Galaxy Working Groups: Find and join a WG
- GitHub: galaxyproject
- Gitter Chat: Start talking with the Galaxy Community!
- GTN Gitter: Join the training discussion here!
- PaperCuts: Monthly Collaboration Fest
- GTN CoFest: Everybody Welcome!
- Twitter: follow @galaxyproject
- Twitter: follow the GTN @gxytraining
- Slack channel: - Have question about the training? Did you run into a problem? Just wanna chat?
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: . Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Webinar Series: Galaxy Resources For..
Each of the 4 webinars in this series that ran earlier this year highlights avaialble Galaxy resources for a different audience. These videos are a nice way to get an overview of what Galaxy has to offer for different types of users...Researchers
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: Wondering how to get started, or how to do a particular type of analysis, or how to scale to thousands of datasets? This webinar will highlight how to find the resources and help you need for each of these questions and more.
Training Material: Galaxy Webinar Page
Speaker
..Educators and Trainers
Subtitles By: Saskia Hiltemann
Description: Galaxy is an exceptional resource for teaching bioinformatics and other data sciences. The Galaxy Platform itself makes sophisticated analysis tools and workflows accessible to learners without requiring them to become system administrators or learn command line interfaces. Galaxy is a graphical user interface that only requires a browser, and allows students and teachers to focus on concepts, rather than compute infrastructure.
Training Material: Galaxy Webinar Page
Speaker
..Tool Developers
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: Galaxy is an excellent platform for increasing the visibility and use of computational tools in any domain that Galaxy has been applied to. If you develop computational analysis or visualization tools then this webinar will demonstrate how porting your tools to Galaxy can significantly increase their visibility and adoption.
Training Material: Galaxy Webinar Page
Speaker
..Administrators & Infrastructure Providers
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: Galaxy can empower your community to create and run their own sophisticated and repeatable data analyses and visualizations, without requiring them to learn command line interfaces or Linux systems administration. If you are interested in helping your researchers help themselves with their data analyses, then this webinar is for you. We will cover resources available in the Galaxy ecosystem to help those who setup and maintain production Galaxy servers.
Training Material: Galaxy Webinar Page
Speaker
Supporting Materials
- Galaxy Webinar Page: View past & upcoming webinars
- Slack channel: #event-gcc2021 - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #event-gcc2021 ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
At the beginning of each day, say hi in Slack and let us know are getting started by answering the following icebreaker questions!
Monday Icebreaker Question
Let us know where you are from, and one fun fact about yourself!
Post your answers in #social on Slack!
Tuesday Icebreaker Question
What is the coolest, most mind blowing fact (nature/people/animal etc.) you know?
Post your answers in #social on Slack!
Wednesday Icebreaker Question
What is your favorite dish (food or drink)? Bonus points for recipes!
Post your answers in #social on Slack!
Thursday Icebreaker Question
1. If you had a time machine, what is the first place & time you would visit? why?
OR
2. What is your favourite book, tv show, movie or game that you would recommend to others?
Post your answers in #social on Slack!
Friday Icebreaker Question
What has been you favourite part of this training week? And what are you looking forward to most during the rest of GCC (if you are attending)?
Post your answers in #social on Slack!
And of course please feel free to respond to anybody here, this channel is for socializing and getting to know each other :)
Note: Please do this every day if you would like to receive a certificate of attendance
Galaxy Tool Development
This module covers everything you need to start developing your own Galaxy Tools. This module will likely take you several days to complete.
Tutorial
Here you will creating Galaxy tools from scratch using Conda for requirements, Planemo for testing, and Git for deployment. You can find the tutorial for these videos here on the GTNConda
Subtitles By: Dave Bouvier
Description: The first step to adding a tool to Galaxy, is to add it to (Bio)Conda. This tutorial will show you how to do that.
Training Material: Tutorial
Speaker
Planemo Init & Tool Structure
Subtitles By: Alex Ostrovsky
Description: Planemo is the Galaxy tool development kit, and will make your tool development process a lot easier! This tutorial will show you how to use Planemo to start the tool wrapping process, and covers the general structure of a Galaxy tool wrapper.
Training Material: Tutorial
Speaker
Writing the tool wrapper
Subtitles By: Alex Ostrovsky
Description: You are now ready to start writing your tool wrapper! This video will show you how.
Training Material: Tutorial
Speaker
Writing the .shed.yml file
Subtitles By: Alex Ostrovsky
Description: Each tool wrapper also needs a .shed.yml file, which contains some metadata about the tool.
Training Material: Tutorial
Speaker
Testing with Planemo
Subtitles By: Matthias Bernt
Description: Here you will learn how to test Galaxy tools using Planemo.
Training Material: Tutorial
Speaker
Contributing the tool back to a public repository
Subtitles By: Matthias Bernt
Description: Here you will learn how to publish tools in public tool repositories.
Training Material: Tutorial
Speaker
Supporting Materials
- Tutorial: Galaxy Tools: From Conda Through Deployment
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #dev-tools-conda - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #dev-tools-conda ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Tutorial
Here you can learn about a specialised Galaxy tool that generates tool wrappers for supplied analysis scripts. Generated tools are immediately installed and ready to run, and can be edited and re-generated in Galaxy. It lacks many advanced features (e.g. filters) but is easy to learn to use for those useful scripts that do not require them. Prerequisites: Linux shell and scripting skills are required. A Linux/Docker workstation or high-end laptop is needed for Appliance installation.There are two hands-on tutorials associated with this session:
- Introductory hands-on DIY tutorial - obtaining the Appliance and creating “hello world” tools using the ToolFactory
- Exploring the demonstration tools in depth and some handy ToolFactory features. There is no particular curriculum - developers will want to explore their own needs. The Appliance encourages learning by doing. It provides instant feedback when a tool is (re)generated.
Brief Overview
Your first "Hello world" tools using Galaxy as an integrated development environment
Long story
Subtitles By: Ross Lazarus
Description: ToolFactory Presentation: Abstract tool interface code that wraps simple scripts can be generated using a Galaxy tool. If you haven’t already decided that the GTN tutorials linked below might be useful for your work, or if want to hear Ross’s opinions on tools, abstract interfaces and why they matter, this talk is for you.
Training Material: Tutorial, Tutorial
Supporting Materials
- Tutorial: ToolFactory: Generating Tools From Simple Scripts
- Tutorial: ToolFactory: Generating Tools From More Complex Scripts
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #dev-toolfactory - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #dev-toolfactory ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Galaxy Training Material Development
Here you can learn about contributing to the GTN’s development, adding new tutorials or slides, and correcting any typos you might spot in the training materials this week.
Tutorial
Learn to contribute to the GTN! Everything from tutorials to slides, small edits and big are welcome and here you’ll learn how.GitPod for contributing to the GTN.
Subtitles By: Saskia Hiltemann
Description: This tutorial will show you how you can preview your contributions to the GTN online using GitPod.
Training Material: Tutorial 1, Tutorial 2, Related tutorial, Slides
Speaker
Creating a new Tutorial
Subtitles By: Engy Nasr
Description: This tutorial will go through all of the steps of creating a simple tutorial and contributing it to the GTN.
Training Material: Tutorial 1, Tutorial 2, Related tutorial, Slides
Speaker
Creating Slides
Subtitles By: The Global GTN Community
Description: This lecture goes through the process of how to create a slide deck, common things you should bear in mind while you’re writing them, and how to enable the amazing slides-to-video features for your slide decks! This video itself was produced automatically from the GTN’s slide decks, anyone making edits to these slides will cause them to be rebuilt, making organising videos for events easier than ever.
Training Material: Tutorial 1, Tutorial 2, Related tutorial, Slides
Supporting Materials
- Tutorial 1: Running the GTN website online using GitPod
- Tutorial 2: Creating a new tutorial
- Related tutorial: Creating content in Markdown
- Slides: Creating Slides for the GTN
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #contributing-gtn - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #contributing-gtn ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Galaxy Core Development
Ever wanted to contribute features to Galaxy? Here you’ll learn a bit about how Galaxy works and how to debug issues in features in Galaxy.
Tutorial
In this tutorial we will demonstrate how to find and fix common types of bugs you may encounter as a contributor to Galaxy. We will step you through the process of finding and fixing a bug - from locating specific errors in the logs of Galaxy’s GitHub Actions, to identifying their cause, developing a solution and committing your edits.Intro
Subtitles By: Dave Clements
Description: This is the first video in the Debugging Galaxy series.
Training Material: Tutorial
Speaker
Fix a failing unit test
Subtitles By: Sergey Golitsynskiy
Description: What to do when a unit test fails.
Training Material: Tutorial
Speaker
API Test Failure
Subtitles By: Sergey Golitsynskiy
Description: What to do when an API test fails.
Training Material: Tutorial
Speaker
Client Unit Test Failure
Subtitles By: Beatriz Serrano-Solano
Description: What to do when your client throws a unit test failure.
Training Material: Tutorial
Speaker
Client Linter
Subtitles By: Beatriz Serrano-Solano
Description: This video covers working through the client linting error hit in the previous tutorial.
Training Material: Tutorial
Speaker
Selenium Test Failures
Subtitles By: Assunta DeSanto, Sergey Golitsynskiy, Dave Clements, Beatriz Serrano-Solano
Description: Selenium is used to test Galaxy development. Learn more about test failure and how to address them.
Training Material: Tutorial
Speaker
Runtime Error
Subtitles By: Sergey Golitsynskiy
Description: How to fix a runtime error
Training Material: Tutorial
Speaker
Conclusion
Subtitles By: Dave Clements
Description: A summary of wisdom to debug Galaxy with.
Training Material: Tutorial
Speaker
Supporting Materials
- Tutorial: Debugging Galaxy
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #dev-debugging-galaxy - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #dev-debugging-galaxy ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Galaxy Architecture Lectures
Here you’ll learn about the internals of Galaxy in a lecture from John Chilton
Lecture Series & Self-study Tutorial
This lecture series will cover:- How is the Galaxy code structured?
- What do the various other projects related to Galaxy do?
- What happens when I start Galaxy
There is also a GTN tutorial (self-study) which will walk you through contributing to the Galaxy core code base. See supporting materials at the bottom of this session to find this tutorial.
Ecosystem
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Project Management
Subtitles By: Mallory Freeberg
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Principles
Subtitles By: Saskia Hiltemann
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Files and Directories
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Web Requests
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
app and Dependency Injection
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Models and Managers
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Pluggable Components
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Web Client
Subtitles By: We apologize for lack of captions on this video. If you are reliant on captions, please check back here soon.
Description: TODO
Training Material: Slides, Self-study tutorial, Youtube Playlist
Speaker
Supporting Materials
- Slides: Galaxy Architecture
- Self-study tutorial: Contributing to Galaxy Core
- Youtube Playlist: Always contains the latest version of these lectures.
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #dev-galaxy-core - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #dev-galaxy-core ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Self-Study Galaxy Development
These tutorials don’t have video walkthroughs, but will all be supported by their authors during the week. So please work through these tutorials by yourself, and ask LOTS of questions in Slack!
Self-Study Tutorial
Ever wondered how to interact with the Galaxy API to scale your work and automated processes? Learn how to here with BioBlend.
This tutorial consists of a set of hands-on exercises in the form of Jupyter Notebooks. You can run these locally on
your computer, or online via Binder. See the README in the tutorial listed below for more information.
Supporting Materials
- Slides: Scripting Galaxy using the API and BioBlend
- Tutorial: Jupyter Notebook Bioblend Tutorials
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: dev-bioblend - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: dev-bioblend ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Self-Study Tutorial
This tutorial will teach you how to contribute to BioBlend and add support for a Galaxy API in BioBlend.
Supporting Materials
- Tutorial: Contributing to BioBlend Development
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: dev-bioblend - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: dev-bioblend ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Self-Study Tutorial
This tutorial walks you through an extension to Galaxy and how to contribute back to the core project.
Supporting Materials
- Tutorial: Contributing extensions to Galaxy core
- FAQ Document - Have a question about this training? Check here to see if it has already been answered
- Slack channel: #dev-galaxy-core - Have question about the training? Did you run into a problem? Just wanna chat? Ask an Instructor on Slack!
- Finished the session? - Let us know that you've finished it, and what you thought of it! On Slack: (Channel: #dev-galaxy-core ). Thanks!
- Enjoyed it? - Like the video on YouTube, Tweet (hashtag #usegalaxy), and follow the GTN on Twitter! @gxytraining
Instructors
The following instructors are available online this week for support for this session:Note: Problems viewing this page? Try the simple view instead.