The bi-weekly ODD seminar series at CCSE - Page 2

Geir Kjetil Sandve: 

To teach introductory programming, one of the first choices one will face is which programming language to use. What criteria to use as a basis for this choice is however not obvious. I will briefly present some characteristics of the languages Java, Python and R that in my opinion influences their suitability for learning programming. This will be followed by an open discussion phase, where I hope that those attending would chime in with their experiences with learning or teaching programming to people from different backgrounds.

Heather J. Lewandowski: 
Quantum sensing, quantum networking and communication, and quantum computing have attracted significant attention recently, as these quantum technologies could offer significant advantages over existing technologies.

In order to accelerate the commercialization of these quantum technologies, the workforce must be equipped with the necessary knowledge and skills.

Through a study of the quantum industry, in a series of interviews with 21 U.S. companies carried out in Fall 2019 and from a survey administered to 57 companies through the Quantum Economic Development Consortium (QED-C) in Fall 2020, we describe the types of activities being carried out in the quantum industry, profile the types of jobs that exist, and describe the skills valued across the quantum industry, as well as in each type of job

Presentation (pdf)

Within the past decade, computation has become increasingly prevalent in school standards and curriculum across the world. One framework, computational thinking, has arisen as the dominent framework in educational settings.

However, computational thinking is a difficult concept to operationalize and has many different, conflicting definitions.

Another conceptualization of how students learn computation, computational literacy, presents a more straightforward definition. Computational literacy breaks computational skills into three pillars: material (programming-related), cognitive (translating between material and programming aspects), and social (communicating around computation and results).

First, we will present an introduction to the computational literacy framework. We will then have a discussion around computational literacy, its tranlsation to different fields, its affordances and constraints, and its potential uses in research and teaching settings. 

Hannah Sabo and Fridjof Gjengset

The TEAM-program is an educational intervention to provide team training for first-year medical and other healthcare students. The aim of the program is two-fold:

(1) To build trust and team skills among the students in order to develop an inclusive and collaborative learning environment.

(2) To prepare the students for their future roles as leaders, communicators and collaborators in an increasingly more complex healthcare system.

The core element is a two-day team seminar, inspired by the Program Seminars at the MN-Faculty, UiO, and the Learning-Team Retreat, at Perelman School of Medicine, UPenn. 

The program is based on a step-wise, research-based model for building well-functioning teams, where each step is implemented through specific activities.

The development and execution of the program is facilitated by near-peer mentors, who follow their designated learning teams through the first year. The educational intervention is systematically evaluated and involves several research projects. Here I will present the program, share what we have learned so far and discuss future developments.

The physics laboratory is a complex environment where students encounter the messiness of the real world, use scientific equipment, execute experimental procedures, make predictions using mathematical and computational models, and more. Despite their potential value, the lab experience can be negative or not effective, especially if the goals and outcomes are not well aligned.

This presentation uses Activity Theory (AT) to make sense of three very different laboratory environments: the “traditional lab”, RealTime Physics (a focus on conceptual learning), and Thinking Critically in Physics Labs (a focus on scientific abilities).

The presentation may be interesting to anyone who is developing or studying laboratory instruction in the sciences.

The time-honored conventional lecture (“teaching by telling”) has been shown to be an ineffective mode of instruction for science classes.  To enhance critical thinking skills and develop problem-solving abilities, collaborative group-learning environments have proven to be far more effective. 

Time and place: , Zoom

In this talk I report on my experiences in teaching programming for humanities students. I have taught this in a variety of ways, as a course for PhD and MA students in linguistics specifically, as a BA-level course in the honours program and as a general BA course for humanities students. The two latter courses were developed in collaboration with CCSE. I will try to say something about why programming is difficult for humanitites students, how it can be made easier and more relevant, and what worked and didn't work in our latest incarnation of the course.

Time and place: , Zoom

Our world is increasingly computational. In the fields of science, mathematics, engineering, and technology the effects of this shift are well established and ongoing. But what does this mean for other fields, like the arts, humanities, the trades, or agriculture? I will kick off this session by presenting a few ideas and observations on the importance of expanding our notion of computational literacy outside of purely scientific and technical fields, based on my experiences growing up in a farming community and my family network of farmers. Then, we will shift gears to a discussion of what this lens of computational literacy might mean for a general pre-college education and how we can provide a computational education to students outside of traditionally technical fields.

Time and place: , Zoom

Programming is a useful tool in several disciplines, but teaching programming in a disciplinary context can be quite different than teaching programming for computer scientists. How can we motivate students with different backgrounds to make sure that programming is perceived as relevant? And how does this affect what the students learn? We will talk about how we can teach programming for biologists, chemists, teachers and high school students, and what this teaching implies.

Time and place: , Zoom

An obvious purpose of computer code is that it gives some desired results when executed on a computer. This is often the overarching focus in programming education, especially outside informatics programs. However, it is in most cases also desirable that code is easily readable and modifiable to humans - this e.g. makes it easier to eradicate bugs or to modify/extend code for new purposes. Many programmers in industry and science are thus arguing for improved programming practices, where the focus is not just on solving one given problem at a time, but on writing code that can be reused and extended to increase productivity in the long run. What is often not explicitly factored into such argumentation, however, is that both learning and applying good programming practices requires effort. This raises two core questions: what level of code quality is typically most pragmatic to aim for in science settings, and how valuable is it to spend course time on learning to improve code quality?

Time and place: , Zoom

We have encouraged students to develop their own physics problems, explore them and report on their results in the form of a computational essay in the course in elementary electromagnetism (Fys1120) from 2018 to 2021. In parallel we have developed new learning material and supporting exercises to provide students with sufficient skills and knowledge to succeed with an essay project. In 2021 the computational essay project was used as an extended home exam counting 50% towards the final grade.

In this talk, I will discuss experiences and reflections on the use of computational essays and how we plan to develop this activity in the coming years.

Time and place: , Zoom

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.

Time and place: , Zoom / CCSE

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?

Time and place: , Zoom

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.

Time and place: , Zoom / Stort møterom CCSE

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.

Time and place: , Zoom

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).

Time and place: , Zoom

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.

Time and place: , Zoom

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.

Time and place: , Join Zoom Meeting

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.

Time and place: , Join Zoom Meeting

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."

Time and place: , Join Zoom Meeting

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.

Time and place: , Join Zoom Meeting

What do we mean by "learning programming", why do many find it challenging to learn, what are really the main challenges, which aspects do people in different settings need to learn and how do they best learn it? Geir Kjetil Sandve will give a brief introduction to a discussion where we look forward to hearing experiences and viewpoints inspired by the myriad settings where people in our environment have been involved in programming.