This repository contains materials for the WSL Julia Workshop 2023 Practical introduction to Julia for modelling and data analysis in biodiversity and earth sciences, held on the 24th and 27th of March 2023 at WSL Birmensdorf.
The repository is organized by days and sessions. Please refer to the Program section to navigate within the repo.
To follow the workshop materials, you need to have the following software installed on your computer:
- Julia
- Jupyter
Additionally, we recommend to use
- VSCode
as an IDE, together with the Julia extension.
Please refer to the installation instructions for further information on how to proceed.
To use the workshop materials, clone this repository to your local machine:
git clone https://github.com/vboussange/WSLJuliaWorkshop2023.git
How you should read this program
- 🎤 : Talk
- 💻: Hands-on exercises
- 🎤💻: Interactive session
8:50 Arrival at Englersaal, WSL (ask at the reception if you don't know where that is)
9:00 - 10:30
- 🎤 Greetings to the Workshop (@Mauro and @Victor) 9:00-9:10
- 🎤 Overview of the Julia programming language (@Mauro) 9:10-9:30
- 🎤💻 Practical: your first lines of Julia code (@Mauro) 9:30-10:30
- Practical Basic syntax and data types
- Practical Control flow and conditional statements
Pick up any format you like best among the
.ipynb
,.md
and.jl
files. Their content is the same!
10:30 - 11:00
11-12:30
-
🎤 Why I like Julia (@Victor) 11:00-11:15
-
Package and project management (@Victor) 11:15-11:45
-
💻Exercise 1: activate an environment and run the associated script
-
💻Exercise 2: Part 1: Set-up the environment of your project
-
💻Exercise 2: Part 2. Develop your first Julia project
-
💻🎤 VS code workflow and remote development (@Victor) 11:45-12:30
- VSCode editor
- Remote development
-
💻 Additional exercises
12:30 - 13:30
13:30 - 15:00
-
🎤 Talk Overview of the ecosystem (@Mauro) 13:30-13:45
- the Julia discourse,
- the packages we like best,
-
🎤 💻
DataFrames
, broadcasting, loading CSV (@Victor) 13:45-14:05 -
💻 Hands-on exercises 14:05-14:30
-
🎤 💻 Plotting and visualisation (@Mauro) 14:30-14:45
-
💻 Hands-on exercises continued 14:45-15:00
15:00 - 15:30
- 🎤 Why I like Julia (@Ludovic) 15:30-15:40
- 🎤 💻 Saving and loading data in Julia (Mauro) -15:40-15:55
- 💻 Hands-on exercises 15:55-17:00
- Coding the game of life
- Continuing previous exercises
17:00-🌙
The goal of this second-day workshop is to provide participants with an opportunity to deepen their knowledge of the Julia programming language through biodiversity and glaciology-related projects.
-
🎤 💻 Geospatial data handling (@Mauro) 9:00-9:30
- Rasters with Raster.jl
- shapefiles
- Hands-on exercises
-
🎤 💻 Performant Julia code and profiling (@Mauro) 9:30-10:00
- Introduction
- Hands-on exercises
-
🎤 💻 Parallel computing (@Victor) 10:00-10:30
- Multithreading
- Multiprocessing
- Exercise: Parallelizing the Game of life
10:30-11:00
-
💻 Hands-on exercises 11:00-11:30
-
🎤 Interface with Python, R, MATLAB (@Victor) 11:30-12:00
-
🎤 Track Introductions (@Victor and @Mauro) 12:00-12:30
- 💻 Project session 13:30-15:00
15:00-15:30
-
🎤 Why I like Julia (@Ivan) 15:30-15:40
-
💻 Project session 15:40-16:30
-
🎤 Wrap-up and feedback 16:30 - 17:00
-
Shallow ice model in 1D
- Time scales, hysteresis. Real topo.
-
Subglacial water routing
- Yesterday and today (Fischer paper)?
-
Ice thickness estimation
- PoG exercise
- Julia official list of tutorials
- https://github.com/storopoli/Julia-Workshop, https://www.youtube.com/watch?v=uiQpwMQZBTA, 3 hours
- https://www.matecdev.com/posts/julia-tutorial-science-engineering.html
- https://crsl4.github.io/julia-workshop/session1-get-started.html
The workshop materials are based on the following resources:
- [List of references or sources of inspiration]
If you have any questions or feedback, feel free to contact the contributors @vboussange and @mauro3.