Skip to content

Bianca In-Depth Hackathon: Improve Your Handling of Sensitive Research Data

Learning objectives

  • Know where to find an overview of topics discussed today
  • Know where to find the link to the shared document
  • Know where to find the schedule
For teachers

Prerequisites are:

  • Link to shared document

Preparations are:

  • Shared document must contain:
    • a proper header with specifics: Zoom room, Bianca project, etc.
    • already redirect to evaluation at bottom
    • evaluation at the bottom

Teaching goals are:

  • Learners know where to find an overview of topics discussed today
  • Learners know where to find the link to the shared document
  • Learners know where to find the schedule

Lesson plan:

gantt
  title Introduction
  dateFormat X
  axisFormat %s
  Prior: prior, 0, 5s
  Introduction: after prior, 5s

Prior questions:

  • What do you think about when you think about Bianca?
  • How would you like to improve your Bianca experience?

Are you already working with sensitive data in your research and feel your workflow can be improved? If yes, welcome to a full day of learning of smarter ways to work on the Bianca UPPMAX cluster.

Help! I am new to Bianca, where do I start instead?

As a beginner, you are encouraged to start with the basic Bianca course, at here.

This course assumes you have worked with Bianca for longer and there is no time scheduled to get a Bianca beginner up to speed.

Course shared document

The course shared document can be found at: https://hackmd.io/@UPPMAX/bianca-workshop-2024/edit.

It contains exercises, room for questions and room for feedback.

To view the shared document in both text and rendered form, click on the button in the top between the pen and eye.

Regarding questions:

  • create a new line for new questions
  • take care if others are editing at the same time
  • the more teaching assistants available, the quicker questions are answered
  • some questions may be answered after the workshop

Schedule

When Who What
9:00 R Introduction
9:10 R Prevaluation
9:20 P Transferring files p1 (includes login)
10:00 . Break
10:15 P Transferring files p2
10:45 R Efficient jobs
11:00 . Break
11:15 R Efficient jobs
11:20 R Complex jobs
11:40 R Replicate jobs
12:00 . Lunch
13:00 B Software and packages installation p1
13:50 . Break
14:00 B Software and packages installation p2
14:40 BR IDEs on Bianca p1
14:50 . Break
15:05 L IDEs on Bianca p2
15:40 R Summary
15:45 R Evaluation
15:45 All Optional Q/A
16:00 . END
  • Who: B: Björn, P: Pavlin, R: Richèl

Overview of courses

flowchart TD

    subgraph sub_basic_use["Basic use of Bianca"]
      can_login_to_remove_desktop(Can login to remote deskop)
      can_login_to_console(Can login to console)
      can_use_command_line_1(Can use the command line 1)
      can_use_modules(Can use modules)
      can_use_interactive_node(Can use an interactive node)
      can_manage_files_using_cli(Can manage files using CLI)
      can_tranfer_files_using_rsync(Can transfer files using rsync)
      can_schedule_jobs(Can schedule jobs)
      can_create_bash_script_using_cli(Can create a bash script using CLI)
    end

    subgraph sub_intermediate_use["Intermediate use of Bianca"]
      can_use_command_line_2(Can use the command line 2)
      can_use_custom_software(Can use custom software)
      can_run_efficient_jobs(Can run efficient jobs)
      can_run_complex_jobs(Can run complex jobs)
      can_run_jobs_on_gpu(Can run jobs on GPU)
      can_run_replicate_jobs(Can run replicate jobs)
      can_use_ide(Can use an IDE)
      can_tranfer_files_using_rsync2(Can transfer files using rsync)
    end

    subgraph sub_non_goal["Not in courses"]
      can_tranfer_files_using_gui(Can transfer files using GUI)
      can_create_bash_script_using_gui(Can create a bash script using GUI)
    end


    %% Basic
    can_login_to_console --> can_tranfer_files_using_rsync
    can_login_to_console --> can_use_command_line_1
    can_login_to_remove_desktop ---> can_use_command_line_1
    can_use_command_line_1 --> can_use_modules
    can_use_command_line_1 --> can_use_interactive_node
    can_use_command_line_1 --> can_use_command_line_2
    can_use_command_line_1 --> can_create_bash_script_using_cli
    can_use_command_line_1 --> can_schedule_jobs
    can_use_command_line_1 --> can_manage_files_using_cli
    can_use_command_line_1 --> can_tranfer_files_using_rsync
    can_use_modules --> can_schedule_jobs
    can_create_bash_script_using_cli --> can_schedule_jobs

    %% Basic -> Intermediate
    can_tranfer_files_using_rsync --> can_tranfer_files_using_rsync2
    can_schedule_jobs --> can_run_complex_jobs
    can_schedule_jobs --> can_run_efficient_jobs
    can_schedule_jobs --> can_run_replicate_jobs
    can_schedule_jobs -.-> can_run_jobs_on_gpu
    can_use_interactive_node --> can_use_ide
    can_use_modules --> can_use_ide
    can_tranfer_files_using_rsync2 -.-> |extra| can_tranfer_files_using_gui

    %% Make sure Intermediate is below Basic,
    %% using invisible nodes
    can_schedule_jobs ~~~ can_use_command_line_2

    %% Intermediate
    can_use_command_line_2 --> can_use_custom_software

    %% Basic -> None
    %% can_login_to_remove_desktop ---> can_tranfer_files_using_gui
    %% can_tranfer_files_using_gui --> can_use_custom_software
    %% can_login_to_remove_desktop ---> can_create_bash_script_using_gui
    %% can_create_bash_script_using_gui --> can_schedule_jobs

    %% Make sure Non-goals is below Intermediat,
    %% using invisible nodes
    can_use_custom_software ~~~ can_tranfer_files_using_gui