Peter Schmidt
UCL for Code in Research
The companion podcast for courses on programming from the Advanced Research Computing Centre of the University College of London, UK.
Author
Peter Schmidt
Category
Podcast website
Latest episode
Feb 18, 2026
Where to listen?
Podcasts in the app Replaio Radio Coming soonPodcasts are coming to the app soon. Install now and be the first to see a whole new take on podcasts
Episodes
5/10 Classes and Design [2026] 18.02.2026 33:44
Here we touch on some ways to build classes in C++ and how class design such as class hierarchies can help to make code more readable, more maintainable and less error prone (amongst other things). Klaus Iglberger and I also touch on design patterns and briefly what other programming paradigms exist apart from object oriented programming (OOP). Links https://medium.com/javascript-scene/the-forgott...
4/10 On Polymorphism [2026] 11.02.2026 26:33
Inheritance, templates, function overloading - they all fall into the category of polymorphism in programming. My guest Klaus Iglberger and I discuss the different aspects of how this could be done with C++. Links https://www.stroustrup.com/glossary.html#Gpolymorphism Glossary provided by Bjarne Stroustrup https://cplusplus.com/doc/tutorial/polymorphism/ https://ics.uci.edu/~jajones/INF102-S18/re...
3/10 Throw, try, catch...test [2026] 04.02.2026 31:49
Exceptions are essentials, as are error codes. Writes Bjarnes Stroustrup. And so on our 3rd stop through C++ I talk about what you could do when things go wrong. And what you can do to prevent errors - with testing. My guest is, again Klaus Iglberger. The sounds you're hearing are from the excellent https://sound-effects.bbcrewind.co.uk BBC sound library - free of use for non-commercial purpo...
2/10 Data Types and the world of (smart) pointers [2026] 28.01.2026 35:29
In the beginnings were...data and data types. Which is where we begin our journey through C++. The language provides for a range of interesting, fundamental, complex and custom types - one of which is a set of pointer types. My guest in this episode is Marc Hartung from Dive in Berlin, Germany. Links: https://en.wikipedia.org/wiki/Pointer_(computer_programming) summary of what pointers are https:...
1/10 C++ - An Introduction [2026] 21.01.2026 38:08
This first episode is about introducing C++, where it started, how it evolved. You will hear from 2 practitioners: Klaus Iglberger (C++ coach/trainer) and Marc Hartung (tech lead at Dive in Berlin). Here are a few links for you to follow up on: https://www.stroustrup.com The Home Page of Bjarne Stroustrup who created C++. There are plenty of links for you to follow https://isocpp.org/std/the-stand...
9/9 Research Software Engineering with Python (COMP233) - Performance 11.12.2025 23:00
In this last episode of this course, I talk to Itamar Turner-Trauring who created the website PythonSpeed and spent a considerable time on finding ways to make Python code faster and more efficient. Python and its ecosystem also have great tools how you can measure performance. Links: https://pythonspeed.com a set of articles and recommendations on how to improve your performance https://blog.sent...
8/9 Research Software Engineering with Python (COMP233) - Design and Patterns 04.12.2025 27:52
In this episode I talk to Jeremiah Miller - a software engineer - and Max Albert - a research software engineer in the research software group at the University of Southampton about refactoring and design patterns. https://en.wikipedia.org/wiki/Design_Patterns https://en.wikipedia.org/wiki/Spaghetti_code https://www.distributed-systems.net/index.php/books/ds4/ book by A Tanenbaum https://refactori...
7/9 Research Software Engineering with Python (COMP233) - Project Management 27.11.2025 29:21
In this episode I talk to Monika Byrne Svata, Agile Delivery Manager at UCL about project management and in particular Scrum and Kanban. GitHub has features, like Issues and Projects that can help you stay on top of your software projects. Links http://www.linkedin.com/in/monikabyrnesvata Monika's LinkedIn profile https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-...
6/9 Research Software Engineering with Python (COMP233) - Documentation 13.11.2025 16:40
Documentating software is part of the life of software engineers. But what kind of documentation do we need? In this episode I take you through three levels of documentation: the basic README and LICENSE files everyone should have, how to be good at writing git commit messages and using tools to turn your source code comments into browsable documentation. Links https://www.sphinx-doc.org/ https://...
5/9 Research Software Engineering with Python (COMP233) - Testing with Python 30.10.2025 24:59
Testing your software is part of development. In this episode I talk about different types of testing, automated tests, legacy code etc. My guest is Stef Piatek from UCL who tells us how he approaches testing in his daily work. Links https://docs.python.org/3/library/unittest.html https://docs.pytest.org/ https://docs.pytest.org/en/7.1.x/how-to/monkeypatch.html PyTest Monkeypatch https://agiledata...
4/9 Research Software Engineering with Python (COMP233) - Data Formats 22.10.2025 24:39
In this episode I'll be discussing data formats such as CSV, JSON and YAML. My guest is Nick Radcliffe from Stochastic Solutions and the Uni. Edinburgh. Nick's expertise is in data science and he has a lot to share about data, data formats and how to use them. Links https://www.linkedin.com/in/njradcliffe/ Nick's LinkedIn profile https://en.wikipedia.org/wiki/Comma-separated_values...
3/9 Research Software Engineering with Python (Comp233) - Introduction to Python 16.10.2025 25:19
Python is one of the most widely used programming languages in research and science. How did it come to that. And what makes Python special? It's something I discuss with my guest in this episode, Robin Wilson, who also takes us through some of the less favourable or more complex aspects of the language. Links http://www.rtwilson.com Robert Wilson https://blog.rtwilson.com Robert's blog...
2/9 Research Software Engineering with Python (COMP233) - Git Part 2 08.10.2025 26:02
In this episode we look into more essential Git commands, such as branching and merging. Branching and merging are key concepts that help you develop code or even text documents in a team. They help you maintain different versions of files and work on them independently. Another element of collaborative working is provided by GitHub: the pull request. Pull request are a great way to do code review...
1/9 Research Software Engineering with Python (COMP233) - Git Part 1 01.10.2025 21:25
Peter Schmidt - the host of this podcast - interviews Sam Harrison, an environmental modeller at the UK Centre for ecology and hydrology. Is it version control important for his research? what tool does he use? How he learn it? Links and transcript available in the show notes. About Sam https://www.ceh.ac.uk/staff/samuel-harrison https://www.ceh.ac.uk/ About Git https://git-scm.com/ https://github...
10/10 C++: Wrapping it up 30.03.2025 38:32
In this last episode of the companion podcast for the C++ course at UCL , I invited both Klaus Iglberger and Marc Hartung ( Dive , Berlin) to go through some aspects of parallel computing. But also to look a little bit ahead of what's in store for C++ in future standards. And how the language may help you in your career. Links: https://www.youtube.com/watch?v=NReDubvNjRg&list=PLY_qIufNHc2...
9/10 - Distributed Memory and Parallel Computing 26.03.2025 38:10
Marc Hartung and I will discuss distributed memory in parallel computing in this episode, with tools like OpenMPI. We also discuss some of the hardware aspects around HPC systems and how shared and distributed memory computations differ. Links: https://www.open-mpi.org OpenMPI homepage https://docs.open-mpi.org/ the docs for OpenMPI https://www.mpi-forum.org The MPI Forum (who write the MPI standa...
8/10 When things happen all ... in parallel 19.03.2025 37:20
Parallel programming is a huge, exciting and evolving field. Together with my guest Marc Hartung from Dive in Berlin, Germany, we try to cover some aspects of it: including OpenMP, how to synchronise data etc. Links: https://en.cppreference.com/w/cpp/language/memory_model the C++ memory model https://www.openmp.org OpenMP home page https://www.openmp.org/resources/openmp-compilers-tools/ Compiler...
7/10 Oh please, make it faster...performance in C++ 12.03.2025 31:41
How can we measure the performance (run-time, memory usage etc) of our C++ code? And what does performance mean, anyway. These and other questions are the topic of this episode - with my guest Klaus Iglberger, C++ engineer, tutor and mentor. Memory https://en.wikipedia.org/wiki/Non-uniform_memory_access something about memory access https://dl.acm.org/doi/10.1145/216585.216588 Ań article on &apos...
6/10 The code you're looking for is in ... the library 05.03.2025 33:30
Software libraries play a crucial role in software development, and C++ is no exception. Klaus and I walk through the different aspects of building, using and selecting libraries. Links: https://cmake.org CMake tool https://en.wikipedia.org/wiki/Library_(computing) write up on software libraries with a bit of history https://en.wikipedia.org/wiki/Executable_and_Linkable_Format the ELF Format for...
TEASER: Research Computing with C++ 14.12.2024 16:59
Welcome to the new podcast from the Advanced Research Computing Centre of the University College London, UK. A companion podcast for courses on Research Computing at UCL. In this first season we'll be presenting the course on Research Computing with C++. And this short teaser explains how it all works. Have fun! Don't be shy - say Hi This podcast is brought to you by the Advanced Researc...
Similar podcasts
Replaio is not a podcast publisher; show names, artwork and audio belong to their authors and are distributed through public RSS feeds.