Skip to content

Commit e42c1e3

Browse files
Enrico GlereanEnrico Glerean
authored andcommitted
page for 2025
1 parent 10dcbea commit e42c1e3

File tree

1 file changed

+300
-0
lines changed

1 file changed

+300
-0
lines changed
Lines changed: 300 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,300 @@
1+
:og:title: Python for Scientific Computing
2+
:disabled:og:image: https://www.aalto.fi/sites/g/files/flghsv161/files/styles/o_914w_ah_n/public/2023-10/PFSC23.png
3+
:disabled:og:image:alt: Python for Scientific Computing course logo with date of 7-10/11/2023, twitch.tv/coderefinery, and partner logos
4+
:description: 25-27 Nov 2025, An online course designed for scientists and researchers in intermediate and practical Python skills.
5+
6+
==========================================================
7+
Nov 25th - Nov 27th 2025 / Python for Scientific Computing
8+
==========================================================
9+
10+
.. admonition:: News and Important info
11+
12+
* We are updating the content for this year's run.
13+
* `Course material <https://aaltoscicomp.github.io/python-for-scicomp/>`__
14+
* Last year run on `YouTube
15+
<https://www.youtube.com/playlist?list=PLZLVmS9rf3nMWEKWtagJ6h0q9BrFO49tn>`__
16+
17+
18+
This is a medium-advanced course in Python tools such as NumPy, SciPy,
19+
Matplotlib, and Pandas. It is suitable for people who know basic
20+
Python and want to understand some internals and important libraries for
21+
science - basically, how a typical scientist actually uses Python.
22+
Read the `learner personas
23+
<https://aaltoscicomp.github.io/python-for-scicomp/#learner-personas>`__
24+
to see if the course is right for you. `Prerequisites
25+
<https://aaltoscicomp.github.io/python-for-scicomp/#prerequisites>`__
26+
include basic programming in Python.
27+
28+
Part of :doc:`Scientific Computing in Practice <index>` lecture series
29+
at Aalto University, in partnership with `CodeRefinery
30+
<https://coderefinery.org>`__.
31+
32+
33+
34+
Practical information
35+
---------------------
36+
37+
.. admonition:: Registration
38+
39+
`General registration: please register here <https://link.webropol.com/ep/pfsc25>`__
40+
41+
This is an online course streamed via Twitch (the
42+
`CodeRefinery channel <https://www.twitch.tv/coderefinery>`__) so that
43+
anyone may follow along without registration. You do *not* need a
44+
Twitch account. There is a collaborative notes link which is used for asking questions during
45+
the course. The `actual material is here
46+
<https://aaltoscicomp.github.io/python-for-scicomp/>`__.
47+
48+
While the stream is available even without providing personal data, if
49+
you register you may get collaborative notes access for asking questions and will
50+
support our funding by contributing to our attendance statistics.
51+
52+
53+
Schedule
54+
--------
55+
The course consists of three online hands-on
56+
sessions 4h each with lunch break in between. All times EET (`convert 9:50 to your timezone
57+
<https://arewemeetingyet.com/Helsinki/2025-11-25/9:50>`__).
58+
**The schedule is tentative**, we may run earlier or later, so join early
59+
if attending a single lesson.
60+
61+
.. warning::
62+
63+
**Timezones!** Times in this page in the Europe/Helsinki timezone.
64+
**In Central Europe, the course starts at 8:50!** (`convert 9:50
65+
Helsinki to your timezone
66+
<https://arewemeetingyet.com/Helsinki/2025-11-25/9:50>`__)
67+
68+
69+
- (week before) **Installation help sessions** (for sites that offer
70+
them)
71+
- **Please connect to all sessions 10 minutes early**: icebreakers and
72+
intro already starts then.
73+
- Tue 25.nov, 9:50-15:00
74+
75+
- 09:50 Icebreakers and warming up (Richard Darst, Enrico Glerean)
76+
- 10:00 :doc:`Intro <python-for-scicomp/intro>` (Richard Darst, Enrico Glerean)
77+
- 10:15 `Jupyter <https://aaltoscicomp.github.io/python-for-scicomp/jupyter/>`__ (Diana Iusan, Richard Darst)
78+
- 11:00 `NumPy <https://aaltoscicomp.github.io/python-for-scicomp/numpy/>`__ (Ashwin Mohanan, Yonglei Wang)
79+
- 12:00 Lunch break
80+
- 13:00 `Pandas <https://aaltoscicomp.github.io/python-for-scicomp/pandas/>`__ (Simo Tuomisto, Richard Darst)
81+
- 14:30 `Xarray <https://aaltoscicomp.github.io/python-for-scicomp/xarray/>`__ (Gregor Decristoforo, Marijn Van Vliet)
82+
- 15:00 End of day 1
83+
84+
- Wed 26.nov, 9:50-15:00
85+
86+
- 09:50 Icebreakers and warming up (Richard Darst, Enrico Glerean)
87+
- 10:00 `Working with data <https://aaltoscicomp.github.io/python-for-scicomp/work-with-data/>`__ (Thomas Pfau, Simo Tuomisto)
88+
- 10:30 `Plotting with Vega-Altair <https://aaltoscicomp.github.io/python-for-scicomp/plotting-vega-altair/>`__ (Radovan Bast, Richard Darst)
89+
- 12:00 Lunch break
90+
- 13:00 `Scripts <https://aaltoscicomp.github.io/python-for-scicomp/scripts/>`__ (Thomas Pfau, Yonglei Wang)
91+
- 14:00 `Profiling <https://aaltoscicomp.github.io/python-for-scicomp/profiling/>`__ (Gregor Decristoforo, Radovan Bast)
92+
- 14:40 `Python productivity tools (autoformatting, linting, AI tools) <https://aaltoscicomp.github.io/python-for-scicomp/productivity/>`__ (Gregor Decristoforo, Radovan Bast)
93+
- 15:00 End of day 2
94+
95+
- Thu 27.nov, 9:50-15:00
96+
97+
- 09:50 Icebreakers and warming up (Richard Darst, Enrico Glerean)
98+
- 10:00 `Library ecosystem <https://aaltoscicomp.github.io/python-for-scicomp/libraries/>`__ (Thomas Pfau)
99+
- 10:30 `Dependency management <https://aaltoscicomp.github.io/python-for-scicomp/dependencies/>`__ (Radovan Bast, Sabry Razick, Simo Tuomisto)
100+
- 11:30 `Parallel programming intro <https://aaltoscicomp.github.io/python-for-scicomp/parallel/>`__ (Johan Hellsvik, Richard Darst)
101+
- 12:00 Lunch break
102+
- 13:00 `Parallel programming continued <https://aaltoscicomp.github.io/python-for-scicomp/parallel/>`__ (Johan Hellsvik, Richard Darst)
103+
- 14:00 `Packaging <https://aaltoscicomp.github.io/python-for-scicomp/packaging/>`__ (Ashwin Mohanan, Richard Darst)
104+
- 14:50 :doc:`Outro <python-for-scicomp/outro>`
105+
- 15:00 End of day 3
106+
107+
108+
Preparation
109+
-----------
110+
111+
`Prerequisites include basic programming in Python
112+
<https://aaltoscicomp.github.io/python-for-scicomp/#prerequisites>`__.
113+
114+
115+
**Software installation:**
116+
117+
* See the `installation page of the course material
118+
<https://aaltoscicomp.github.io/python-for-scicomp/installation/>`__.
119+
120+
* In principle, if you are at Aalto, the service
121+
https://jupyter.cs.aalto.fi should be sufficient to do most of
122+
this course without any local installations. Perhaps not
123+
everything, but it will be OK for most people.
124+
125+
126+
**Mental preparation:** Online workshops can be a productive format, but it
127+
takes some effort to get ready. Browse these resources:
128+
129+
* `Attending a livestream workshop
130+
<https://coderefinery.github.io/manuals/how-to-attend-stream/>`__,
131+
good to read in detail.
132+
* `How to use HackMD to take answer questions and hold discussions <https://coderefinery.github.io/manuals/hackmd-mechanics/>`__.
133+
* It is useful to `watch <https://youtu.be/56p6xX0aToI>`__ or `read
134+
<https://scicomp.aalto.fi/scicomp/shell/>`__ the Linux shell crash
135+
course, since these basic command line concepts are always useful.
136+
137+
138+
139+
Credits
140+
-------
141+
142+
It is possible to obtain a certificate from the course with
143+
a little extra work. The certificate is equivalent to 1 ECTS and your study
144+
supervisor will be able to register it as a credit in your university study
145+
credit system. Please make sure that your supervisor/study program accepts it.
146+
147+
Learners with a valid Aalto student number will automatically get the credit
148+
registered in Aalto systems.
149+
150+
To obtain a certificate/credit, we expect you to have registered to the course by 7/11/2024,
151+
follow the 4 sessions and provide us with at least the following 5 documents via email
152+
(1 text document, 3 or more python scripts/notebooks). **Please remember to add your name and surname to all submitted files. If you are a student at Aalto University, please also add your student number.**
153+
154+
- **1 text document** (PDF or txt or anything for text): For each of the 3 days, write a short paragraph (learning diary) to highlight
155+
your personal reflections about what you have found useful, which topic inspired
156+
you to go deeper, and more in general what you liked and what could be improved.
157+
- **3 (or more) .py scripts/notebooks**: For each of the 3 days take one code example from the
158+
course materials and make sure you can run it locally as a ".py" script or as a jupyter notebook.
159+
Modify it a bit according to what inspires you: adding more comments, testing the
160+
code with different inputs, expanding it with something related to your field of
161+
research. There is no right or wrong way of doing this, but please submit a
162+
python script/notebook that we are eventually able to run and test on our local computers.
163+
164+
These 4 (or more) documents should be sent before 30/November/2024 23:59CET to [email protected].
165+
If the evaluation criteria are met for each of the 4 (or more) documents, you will receive
166+
a certificate by end of December 2024. Please note that we do not track course attendance and if you missed one
167+
session, recordings will be available on Twitch immediately after the streaming ends.
168+
169+
**Additional course info at:** scip -at- aalto.fi
170+
171+
172+
173+
Community standards
174+
-------------------
175+
176+
This is a large course, and we will have many diverse groups attending
177+
it. There will be people attending at all different levels, from
178+
"just learned Python" to "been using Python for a while and want to
179+
see some tips and tricks". Everyone will choose their own path, some
180+
people will be more hands-on or more "watching". Everyone is be both
181+
a teacher and a learner. Even our instructors are always learning
182+
things and make mistakes (and this is part of the point!). Please
183+
learn from our mistakes, too!
184+
185+
This course consists of both lectures, hands-on exercises, and demos.
186+
It is designed to have a range of basic to advanced topics: there
187+
should be something for everyone.
188+
189+
The main point this course is the exercises. If you are with a group,
190+
we hope people to work together and help each
191+
other. We expect everyone to help each other as best as they can with
192+
respect for different levels of knowledge - at the same time be aware
193+
of your own limitations. No one is better than anyone else, we just
194+
have different existing skills and backgrounds.
195+
196+
If there is anything wrong, *tell us* - HackMD is best. If you need to contact us
197+
privately, you can message the host on Zoom, instructor chat is via
198+
`CodeRefinery chat <https://coderefinery.github.io/manuals/chat/>`__,
199+
and by email contact `CodeRefinery support
200+
<https://coderefinery.org/>`__. This could be as simple as "speak
201+
louder / text on screen is unreadable" or someone is creating a
202+
harmful learning environment.
203+
204+
205+
Code of Conduct
206+
---------------
207+
We are committed to creating a friendly and respectful place for learning, teaching,
208+
and contributing. You can read our `Code of Conduct here <https://coderefinery.org/about/code-of-conduct/>`__.
209+
If you need to report any violation of the code of conduct, you can email the organisers at scip _at_ aalto.fi,
210+
alternatively you can also use `this web form <https://indico.neic.no/event/183/surveys/47>`__.
211+
212+
213+
214+
Material
215+
--------
216+
217+
* https://aaltoscicomp.github.io/python-for-scicomp/
218+
219+
220+
Partners
221+
--------
222+
223+
This course is hosted by Aalto Scientific Computing (Aalto University,
224+
Finland) and CodeRefinery. **Our livestream, registration, materials,
225+
and published videos are free for all** in the spirit of open science
226+
and education, but certain partners provide extra benefits for their
227+
own audience.
228+
229+
230+
**Staff and partner organizations:**
231+
232+
* :doc:`Aalto Scientific Computing </index>`
233+
* `CodeRefinery <https://coderefinery.org/>`__
234+
* `NAISS <https://www.naiss.se/>`__
235+
* `KTH <https://kth.se>`__
236+
* `UPPMAX <https://www.uppmax.uu.se/>`__ (Uppsala University)
237+
* `IT4SCI <https://helpdesk.it.helsinki.fi/en/services/scientific-computing-services-hpc>`__ (University of Helsinki)
238+
* `University of Oslo <https://www.usit.uio.no/>`__
239+
* `Nordic RSE <https://nordic-rse.org/>`__
240+
* `University of Oulu <https://www.oulu.fi/fi>`__
241+
* `University of Jyväskylä <https://www.jyu.fi/en>`__
242+
* `University of Eastern Finland <https://www.uef.fi/en>`__
243+
* `CSC IT Center for Science <https://csc.fi/>`__
244+
* `Finnish Reproducibility Network <https://www.finnish-rn.org/>`__
245+
* `Scientific IT Services of ETH Zurich <https://sis.id.ethz.ch/>`__
246+
* `eScience center <https://www.esciencecenter.nl/>`__
247+
* `ENCCS <https://enccs.se/>`__
248+
249+
250+
..
251+
252+
* Radovan Bast (CodeRefinery, The Artic University of Norway) (instructor, helper)
253+
* Richard Darst (ASC, Aalto University) (instructor, instructor coordinator, director)
254+
* Gregor Decristoforo (The Artic University of Norway) (instructor, helper)
255+
* Enrico Glerean (ASC, Aalto University) (instructor, coordinator, communication, helper)
256+
* Johan Hellsvik (PDC, NAISS, KTH) (instructor, helper)
257+
* Diana Iusan (`UPPMAX <https://www.uppmax.uu.se/>`__, NAISS, Uppsala University) (instructor, helper)
258+
* Ashwin Mohanan (ENCCS / RISE) (instructor, helper)
259+
* Thomas Pfau (ASC, Aalto University) (instructor, helper)
260+
* Teemu Ruokolainen (ASC, Aalto University) (instructor, helper)
261+
* Sabry Razick (University of Oslo) (instructor, helper)
262+
* Simo Tuomisto (ASC, Aalto University) (instructor, helper)
263+
* Marijn Van Vliet (Aalto University) (instructor, helper)
264+
* Yonglei Wang (ENCCS / Linköping University) (instructor, helper)
265+
266+
...and many more `contributors to the learning materials on Github <https://github.com/AaltoSciComp/python-for-scicomp/graphs/contributors>`__.
267+
268+
269+
Contact
270+
-------
271+
272+
* Registration inquiries: scip -at- aalto.fi
273+
* Other organizations who want to join as a partner: scip -at-
274+
aalto.fi
275+
* Chat with us on `CodeRefinery chat
276+
<https://coderefinery.zulipchat.com>`__ (anyone) or :ref:`Aalto
277+
University scicomp chat <chat>`
278+
279+
280+
281+
282+
See also
283+
--------
284+
285+
* https://coderefinery.org
286+
* https://scicomp.aalto.fi/training/
287+
288+
.. admonition:: Last year edition
289+
290+
* Links
291+
292+
* `Course material <https://aaltoscicomp.github.io/python-for-scicomp/>`__
293+
* Watch here: https://twitch.tv/coderefinery/
294+
* `YouTube playlist (processed, later that day)
295+
<https://www.youtube.com/playlist?list=PLZLVmS9rf3nNI3oQEqSJW6yXltOAZnkpa>`__
296+
`Twitch videos (raw, for 7 days, immediately available)
297+
<https://www.twitch.tv/coderefinery/videos>`__
298+
* `Archived Q&A days 1-2
299+
<https://notes.coderefinery.org/python2023?view>`__ and `days
300+
3-4 <python2023archive>`__

0 commit comments

Comments
 (0)