# Internal scratchbook
## Reminder: next week "Intro to Parallel programming with MPI"
dear Triton users,
There is still time to register for next week's course on parallel programming with MPI.
Schedule, registration link, and more details here: https://scicomp.aalto.fi/training/scip/mpi-introduction/
Please also check our courses for Spring 2021 and other interesting courses (Linux Shell scripting, Code Refinery, Data Anonymisation, Matlab, Software Design, Data management and Open science trainings, etc...) at
https://scicomp.aalto.fi/training/
best regards
Enrico Glerean on behalf of ScienceIT/Aalto Scientific Computing
###############
March 2021 / MPI introduction
Audience: Employees and students looking for the extensive intro into MPI programming model.
About the course: In this introduction to MPI programming we are going to cover all the basic functionalities of the API, and see how these are applied to real problems. Starting from simple, well-established algorithms, we will build up towards more advanced and realistic examples commonly found in computational physics and chemistry. Finally, we will explore how the strengths of OpenMP multithreading and MPI can be combined with hybrid parallel programming.
The course is focused on practical aspects of parallel programming applied to problem solving. The language of choice is C, but few words will be spent on how to use MPI in FORTRAN if required by the students. Students are expected to have a basic understanding of conventional programming, and some familiarity with C.
Lecturer: Filippo Federici, D. Sc., Department of Applied Physics, Aalto University
Time, date:
Tue 9.3 10:00-13:00
Fri 12.3 10:00-13:00
Tue 16.3 10:00-13:00
Fri 19.3 10:00-13:00
###############
-------------
## EMAIL TO STUDENT GUILDS
Dear people of student guilds from computer science, inkubio, data, physics and math
I have not picked you randomly :) Milja Leinonen recommended that I should contact you to promote our practical courses on scientific computing. We teach what they should teach during your studies, but that unfortunately nobody has time to teach. However, some of the skills we teach are extremely useful outside academia (linux shell scripting, GIT version control, parallel computing, python, matlab, R, julia, open science, personal data, data anonymisation, ...)
So I kindly ask you to forward the email below to your list members so that those who are interested can register to the courses listed at our page https://scicomp.aalto.fi/training/
Thank you in advance!
Enrico
----------
hi!
Are you interested in learning about useful computational skills that are not often taught in ordinary academic courses? For example: Linux shell scripting, GIT version control, parallel computing, python, matlab, R, julia, open science, personal data, data anonymisation, ... ?
Then please check our list of practical "hands on" courses athttps://scicomp.aalto.fi/training/
Other interesting courses at Aalto are also linked from that page.
Next week we have "Parallel programming with MPI", you can register at the link above.
Thank you for your attention and if you have any questions feel free to contact us at scip@aalto.fi
Have a nice day!Enrico Glerean on behalf of Aalto Scientific Computing https://scicomp.aalto.fi
--------
--
Enrico Glerean (PhD D.Sc) - www.glerean.com
Staff Scientist at Aalto School of ScienceAalto Universitymobile: +358 50 594 3377
email: enrico.glerean@aalto.fi
## [triton-users] Upcoming Scientific Computing courses for Spring 2021
Hello!
We have new courses coming up:
https://scicomp.aalto.fi/training/
March 2021 / MPI introduction
March 2021 / Linux Shell Scripting
March/April 2021 / Code Refinery workshops Spring 2021
April 2021 / Hands-on Data Anonymization
April 2021 / Software design for scientific computing
May 2021 / Matlab Advanced
And other courses listed in our pages.
Read more and register at https://scicomp.aalto.fi/training/ and come chat with us at https://scicomp.zulip.cs.aalto.fi if you have suggestions, questions, or just want to feel closer to others doing computational science.
Furthermore, do you handle research data? Please take the Research Data Management survey by Aalto Research Services: https://webropol.com/s/rdmquestionnairespring21 (approximately 6 minutes of your time).
Have a great weekend!
Enrico on behalf of Science IT / Aalto Scientific Computing
---
# OLD STUFF
=====================================================
April 2021 / Software design for scientific computing
=====================================================
Part of :doc:`Scientific Computing in Practice <index>` lecture series at Aalto University.
**Audience:** employees and students, intermediate or advanced level
in Python. For this course we also warmly invite those who already know everything there is to know about Python.
**About the course:** Getting the desired end result is an important first step in writing your analysis script or program. But it is just the beginning of the journey to truly great software. In this course we set you on a path to thinking about the *design* of your code: how to make it obvious what the code does, that it is correct, efficient and elegant. As programmers, we are on this journey for our entire career. For example, we assume you know *how* to write a function in Python. In this course, we aim to teach you *which* function you should write.
We will present some design guidelines and discuss them together. Then, we will all implement a simple, but not trivial, data analysis pipeline from the neuroimaging domain. Next, we will review each-others code based on the design guidelines and note things that were designed well and things that could be improved. Finally, we will re-work our code based on the feedback we received and things we learned from reading other people's code. Hopefully, you will end up with a pearl of great code that can serve as inspiration for the code you'll write from here on after.
We expect that course participants are familiar with the Python programming language, along with the basic packages for scientific computing (NumPy/SciPy/Matplotlib/Pandas). To test your knowledge of these basics (and point you to relevant documentation to fill in any gaps), we have designed the `Gizmo challenge <https://github.com/wmvanvliet/gizmo>`_.
**Lecturers:**
- Susanne Merz, NBE, Aalto University
- Marijn van Vliet, Science IT, Aalto University
**Place:** Online, common Zoom link for all the sessions `aalto.zoom.us/j/947220751 <https://aalto.zoom.us/j/947220751>`__
**Time, date (all times EET):**
19.04 10:00-12:00 Theory session: 10 to 12
26.04 10:00-14:00 First review sessions (half hour slot per person)
03.05 10:00-15:00 Second round of review sessions (half hour slots) and recap session from 14:00 to 15:00
**Course material:** All course material can be found in this repository: `https://version.aalto.fi/gitlab/merzs1/cdwassignment <https://version.aalto.fi/gitlab/merzs1/cdwassignment>`.
**Cost:** Free of charge for FGCI consortium members including Aalto employees and students.
**Registration:** Link not yet available
**Credits:** Credits are available for Aalto students and a course certificate can be provided on request for outsiders. Credits/certificate require full time participation and handling home work/assignments. Full course hours correspond roughly to 1 ECTS.
**Setup instructions:** To access the online course you need to have access to Zoom, either through the Zoom client or through a browser.
To follow and participate in the workshop, we expect you to also have access to a Python installation with the basic scientific software stack (NumPy/SciPy/Matplotlib/Pandas, see `https://www.scipy.org <https://www.scipy.org>`_). We recommend an anaconda installation. You can refer to https://coderefinery.github.io/installation/python/ for installation instructions, ignoring the CodeRefinery specific parts. You will also need a working and configured git installation. Instructions at https://coderefinery.github.io/installation/git/.
**Additional course info at:** susanne.merz -at- aalto.fi or marijn.vanvliet -at- aalto.fi