 I'm Andres, I'm a Haskell consultant with Welltyped for the past eight years. I've always liked teaching as a part of the things that we're doing and over the last year we've been working with IRHK and I've been involved in a number of courses. At first we had a number of Haskell courses where we taught the basics but also the more advanced features of Haskell to just people all over the world that are interested in the topic and here in Regensburg we're now doing something slightly different. We're teaching the developers at IRHK about testing and specification and functional correctness and yeah I've been a part of setting up this course and I'm also teaching parts of it. We're also very blessed to have John Hughes here who is one of the big names in the Haskell testing world and is the author of the QuickCheck library so a large component of this course is to teach all the intricacies of this particular library to the developers. Yeah so the purpose of the course is really a two-fold I would say so there are there are two important aspects that we're trying to achieve here so first of all we want to bring the developers up to speed with the important aspects of testing very complicated pieces of code I mean the kind of code that you need to write in a cryptocurrency context is not at all trivial there is networking involved there is concurrency involved there is a lot of things that can go wrong and testing these kinds of aspects is it's not it's not the kind of context in which you typically first learn about testing so if these aspects come into it creep into it and everything becomes far more difficult but it's also that IRHK is hiring people from all over the world with a variety of backgrounds so there are classical developers there are people who have university degrees there are people who are self-taught enthusiasts there are people who are interested in formal methods there are people who are interested in programming languages designed there are people who are interested in game theory or people who are actually doing research so they're all these people with an IRHK and they're working on the same kind of things and you need you need a language to communicate with each other and so one important aspect of this course is also to to teach everyone some sort of common vocabulary in terms of specifications in order to make sure that people from various corners and areas within the company can can effectively communicate with each other about the goals that IRHK is trying to achieve. I'm quite impressed that IRHK is putting so much emphasis on training their own people I mean it's in practice this is very important but unfortunately in my experience many companies are overlooking that this is important to do again one of the reasons is that people simply have various different backgrounds and even if in principle everybody knows something about a particular topic it doesn't necessarily mean that they know the same thing. Another important thing is also in particular in the context of IRHK which is a remote company everybody is working in different places people rarely ever come together into one place and meet each other. There are many experts within IRHK themselves they have experiences with various different things that they have been doing but in a remote context where you're typically working and communicate via video calls or via text-based chats you rarely get the opportunity to really share your own experiences or also the own problems that you've encountered so when setting up this particular course one of the important things that we try to bring into it is to also reserve sufficient time for people to flexibly add things to the schedule so we are having this open discussion session at the end of every day where people can basically just propose topics that they want to briefly bring up and highlight and I think that has been turning out to be really useful because it means that also the content of the course is immediately going to be challenged and being put to the test by the real world concern so there is enough space in the course not just to do exercises and to do practical work but also to ask questions that go slightly beyond the immediate things that have just been discussed on the slides but to say like look we have this module here and there is this particular problem with it and how does it relate to what you just said and I think that that's been important to me when we when we try to set up the course and if anything I would love to have even more of that space unfortunately time is always limited.