# 2021

## Previous

Computational thinking (CT) has been added to many educational standards around the world. However, this new content presents challenges around preparing teachers to incorporate computational thinking into the STEM disciplines. In this talk, I will first give a review of the literature around preparing pre-service secondary STEM teachers to incorporate computational thinking into their subjects. I will then present data from interviews with pre-service secondary subject teachers in the STEM teacher education program at UiO . The data highlight a current gap in the research on teacher preparation: that the computation learned in upper division subject courses does not directly translate to the computational thinking that they will be teaching their future students. Finally, I give some suggestions for remedying this gap.

I will present a possible model for task design of mathematical programming problems (MPPs), where both the overarching design and a concrete example is given.

Following the implementation of the design into a mathematics classroom, I will present the students interactions when they were working on MPPs as well as a short analysis of the findings.

Finally, presenting the types of obstacles students encounter when working on MPPs and a discussion regarding the different types. There will be examples from the MPPs, experiences from the implementation, and questions/discussion throughout the module.

In chemistry, students typically have their first encounter with quantum theory in a dense course covering an extremely broad range of topics to a somewhat shallow degree. Chemists require some knowledge of basic quantum theory, many body theory, time-dependent theory and spectroscopy.

BraketLab is a Python module being developed at the Hylleraas Centre of Quantum Molecular Sciences, which aims to provide a framework where the algebra and logic of quantum theory are automatically enforced, thus allowing the students to freely explore the quantum world and intuitively learn the rules while exploring.

I'll present the module, show some exercises and tutorials, and briefly share some experiences we've gained from teaching with it this semester.

Marcos Caballero: Integrating computation in American high schools - a tale of resourcing, federalism, and equity

Tor Ole Odden: Everything can be a vector! An approach to teaching machine learning to early physics students?

Statistics courses typically come in two different flavors:

1) A first type of course seeks deep understanding based on mathematical reasoning and proofs.

2) A second type of course focuses on practical applications, primarily based on fixed recipes without delving into underlying details.

3) I will here propose a third way, which seeks understanding of fundamental concepts, but through programming and simulation instead of mathematical proofs. This third way is thus geared towards students that have a stronger background in programming than mathematics, and that seek to understand the fundamentals as a basis for developing statistical analyses and data science methodology. This third way would also exploit its basis in programming to promote self-driven exploration, drawing inspiration from how computing has been integrated into science education through the long-running CSE initiative. I will provide examples ranging from how to explore the central limit theorem to performing Bayesian marginalization.

In this talk, I will briefly describe four different perspectives from the educational research literature on what it means to learn scientific computing: 1) modeling, 2) practices, 3) computational thinking, and 4) computational literacy.

I will also touch on the epistemologies inherent to each theory - what they have to say about scientific knowledge, cite key references, and suggest instructional approaches tailored to each approach.

Constructive alignment of learning aims, examination and learning activities is a convincing principle for course design. However, to make a meaningful alignment, we first need to precisely define and understand these aspects in the context of a given course. For instance, if learning aims are to truly guide/define examination and learning activities, we need a rich conception of learning aims that goes well beyond the short, general and typically vague formulations provided on course web pages. As always, devil is in the details. To initiate a discussion, I will show examples of how we have tried to face the challenge of being sufficiently concrete in our approach to constructive alignment in the course IN1000 (a large introductory programming course at UiO).

After having taught computing in a mathematical setting for many years, I have collected a number of observations and hypotheses about how students develop their understanding. In particular I have seen many examples of how computing triggers understanding of mathematical concepts. Some of these are quite standard, eg. numerical integration as a tool to extend the understanding of the definition of the integral. In this talk I will discuss some fairly obvious examples of this kind, but I will focus on some less obvious examples. Hopefully, this will illustrate that computing can be integrated fruitfully with mathematics in areas far beyond what we do today.

In the new CompSci MSCA PhD program we will educate 32 PHD-students across the faculty. They will all have a 20 ECTS intensive introduction course in computing and data science. This will open new opportunities to develop PhD-level courses in the spirit of the CS program. I will introduce a discussion of what the contents and level of such courses should be with a particular focus on how Fys4150 and Fys-stk4155 can be adapted to students with diverse computational skills.

It would be a mistake to assume that students have learned the thing you just presented to them. Formative assessment is thus concerned with informing both the teacher and the student about how much students understand about a topic, and discover any misunderstandings.

The seminar will be in Norwegian: "Vi presenterer en modell for kompetanseheving i realfaglig programmering for lærere. Modellen tar for seg opplæring i programmering på fagenes premisser, og vi ser på hvordan en slik modell kan brukes for lærere i høyere utdanning."

Computational thinking are by some defined as the capability to resolve problems algorithmically and logically, including skills related to representing, organizing and identifying patterns in data. This may be seen as leaning in a direction of discrete and observable processes. The Norwegian translation to "algoritmisk tenkning" can be read even clearer in the direction of defining explicit, deterministic instructions to achieve a well understood outcome. At the same time, computational thinking is not only promoted as a means to allow the development of concrete code/algorithms, but also as a way of thinking constructively about phenomena in a variety of fields. And it is clearly not the case that all phenomena in nature and society only involve discrete, directly observed entities - to the contrary, many relations and processes we may be interested in are continuous and probabilistic in their nature, where we have to constructively relate to risks, uncertainties and underlying patterns. An interesting question is whether the ability to devise algorithms to solve well defined problems and the ability to relate constructively to questions in an uncertain world should be seen as two aspects of the same skillset, or as separate skills that are cultivated through separate learning experiences.