Bestand wählen
Merken

Jupyter notebooks for teaching and learning

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
thank you stuff and thank you all for coming thank you for inviting me to speak carrier patents and before I get underway I want to emphasize that this talk is large enough about my experience so I need an agent software developer and I've done little bits of teaching for things like Software Carpentry have but in order to make this talk I went to be Jupiter and education maintenance and asked other people about their experiences and all of these
wonderful people came back to me and told me about the courses that they talked with notebooks and the advantages the disadvantage is the things that they use things like this and and so largely this talk is a condensation in a summary of the experience of a lot of these people who responded to my e-mail so I'm very grateful to them
so in the course of this talk and I'm going to be trying to answer these 4 questions from the perspective of somebody who use at preparing to teach some sort of material on is thinking of using notebooks and say you should I use notebooks are they the right thing for any particular course all what pitiful father well what should I avoid doing with their books what other software tools are the that you can use along with the notebook to enhance the course and should ideally placed the notebooks on a server when the students can run them or should I encourage them to do local installations on their machines so thinking to dive into the 1st question yeah at the them stretch the have nots and the Chinese networks so you know you expect me say that and there's a variety of technical issues that have things like using may books in version control can be awkward and projecting them if you've got low resolution projectors with main places still do you had can be difficult and and other things like if some code produces a massive amount of output that it can so your browser down and look it up and arms it can be a pain and was also pedagogical issues that people right must have a lot of them stew with confusion with the unfamiliar notebook interface I have in
Southampton learning-based had they teach a 1st yeah computing course for engineering students and and they're actually
avoid using the work in the 1st section of the course they introduce later on I have because of the bachelor right have they want people to learn so the common suffrage during practices like running k from the command line and writing tests the your modules and things needs it more difficult to do with the notebook but on the other hand those on the left that those people saying that the network can cause them problems because it introduces extra cognitive load on the students that having to learn to program a landmark down at the same time that they're trying to learn the subject matter so this kind of like 2 opposing ends of this argument because the people saying I you know the bad thing is that the students have to make too much about computers and this people saying about thing is that the students don't have to know enough about computers this is kind of in that maybe there's a unleashing the middle of the notebooks confess and indeed the does seem to be
so you this is a hovering above barber's hadn't CFT Python
cause often called 12 that cannot be a state so this is a fluid dynamics series of lectures and this is untrue
doors uses matrix to teach quantum mechanics in particular around this and Python library called cuted doing quantum calculations the this is
the you see that the data-rate costs so this is a data science
module that now requiring all incoming undergraduates to take regardless of what subject majoring in and this is made a
Brockton in Oslo run tractors prompt his name wrong I have here is that going to start teaching a Python cost biologists this autumn and he even gets to design a new classroom to teach it but he's going these notebooks work had this classroom I should say is not his fostering this is 1 of the the examples that he's looking out for inspiration and this of a different
example had this is Mike right who has given a variety of container tutorials using doctor and humanities and things using notebooks with the
batch handle and so this is running a batch hated the notebook rather than Python paid and he delivers these tutorials and conferences like this 1 in fact I think he was I hear Python last year during 1 of these tutorials so what's the what
do people use notebooks given all of the problems that we pointed out before so the the key value proposition really of notebook interface is the or combining computing and writing and mathematics have so you can combine explaining the steps you have to do something with illustrating those steps and because increasingly just about every every discipline involves some measure of of computing and this is very valuable format to describe the computing process and these are all reasons that people on the mailing list gave you just want to pull out a couple of them particularly had so couple of people said that and using a space to teaching sort of with pen and paper and allows the students to tackle harder problems than they would write something down and paper and in particular has something he's teaching chemistry said that that students can tackle problems that don't have a straightforward analytical solution so you the text books for this subject often limit themselves to problems where you can use algebra to make a straightforward solution but with notebook you can go into more complicated problems and and somebody else suggested that have 180 desk had their exercises in notebooks space to asking that students to submit playing Python code files then because you have the Martin dates and you have the results that the student has saved in the nite because they're executing it you get a better idea of therefore process than you do we just from the case that they've written by itself and these were a couple of interesting things that I hadn't thought of so you to summarize kind of when the notebooks a good idea so I think that networks are good idea when you've got computational steps to a problem that you want to you you want combining the explanation and the illustration of those steps hand but again thinking about teaching with books then you should consider what it is that you want your students to learn like do you want them to be more shielded from the the computational stuff overcoming side of things do you want them to learn more of the sort of software engineering skills like using the command-line right and tests and things have and you might decide not to use notebooks apart the courts and use the regular KDE in text files for other parts of of the courts 2 weeks in they've announced the
2nd question what can go wrong with teaching in notebooks so the big 1 is to new down home so you it's real easy when you passionate book with lots of examples in their explaining all of your your computational steps to go through going as you can see now we do that's next you must and see we do this let's and that's and it's easy to get accurate much quicker than the people watching that can take it in of so do you have to you especially if you have all of the code already there in it but you have to really force yourself to go through it at a measured pace so that people have a chance to pick up what your what you're doing with it as 1 way you can do this is to leave blank it's that you have to fill in as a talking and that's a very effective way of forcing us self the down you can also leave blanks if you're distributing these networks to the students that the banks events that they have to fill in have and this is of a a standard part of of teaching is that anything that involves people doing doing some sort of active process in the learning so even if they just have to translate aim of formula into orbit contained it's a much more that's that's the thing sticks in the mind much more effectively than just reading and watching passively and so you can consider doing less and 1 thing that we do you for instance in Software Carpentry is leave blank that's the exercises that students are expected to be hand but then there is a solutions that book in the same directory that they have so if that behind to need to catch up with the exercises they can go and look at the solutions and that what's the Software Carpentry because it's not assessed on a thing the students just that and learned so we trust them not to you not a cheat because there's really no point in cheating so moving on again the extra software tools that you can use with the
notebook say this is indeed breakdown has which is a system
for creating and using a book that's assignments so the students have 1st in nuns the system for bringing it back and marking it so this screencast here is illustrated in the process of creating a new book assignment and you can see there's a a sort of extra cell tool bar which is provided by plug-ins and you can select the cells as being automatically graded answers all manually graded answers and you can you give them ideas you assign numbers points for them and and it's pointing out that so take a number of points of the top
and and from the students point of view this what they see another plug-in that your running on the students version of the notebooks and they get a list of assignments that they can go and downloaded and that assignment is now a collection of notebooks and for each of those the student has the option to run the automatic parts of the marking before they submitted so they
can see how many of the text that passes or fails before they they send it into you have said this
case the student hadn't done anything at so when they clicked validated it failed now this example student is going to go and find the necessary that of Kate and fill in they tend to do that and they'll say facts and then back to the the the screen and when they validated gain that
now it says this is fast and
then the student has a button that they can practice make this whole assignment so with these notebooks and then on
the head on the teachers all the markers point of view and the greater can take care of the automatic hearts that runs the students carried it runs the test samples and it's at automatically assigns smart it passes the test in those cells and and then there is an interface called form greater where the the mark conveyed through and manually adjust those marks and that Marx version answers and things haven't seen not limited to just questions that have an automatic mark and which spread important because you you need to you need to check the people actually understand things as well as that that it works have an and greater also includes things for clock those marks and exporting them into different formats and for giving students feedback and so you can make notes on bounds that help them you know this is what you did wrong in this place and so it's not just it's not just about the score that they get it's about how they can improve as well the
yeah another tool for the same kind of thing is that OK pine and this is actually base of these oughta grading systems have for those that you see that the and this is the 1 that that using on the data science cost-effective the fall and this has as you can see a very slick web interface from the teacher's point of view here and it's not specific to notebooks so I would guess that it doesn't have the same level of integration with the notebook interface for
creating assignments and things that does have but if you want to mark no books and other kinds of cases missions and then this is a brain each interface and at the moment I think they even provide this is hosted service the free at at how long that will last
so another group of tools here our and for pasting notebooks which we're going to discuss whether or not it's a good idea in a couple of minutes and and the 2 main options that people use here say duke's how is our open-source DIY solution and this is the python javascript software that you can install on the server and the server that your institution or it maintains or a cloud server on Rackspace or Amazon Google or Microsoft or whatever that you have an and Duke how you can set up different different sizes of things say if your students need to solve problems that require a GPU then you can show that this is running on computers that have access to the necessary GPU the I and it can be integrated with different locking options so you can plug how into your universities single sign-on system or in an integrated with GIS publicans with using 0 or or if if you don't do any of that you can just use it as a stand-alone log and give students a new username and password to access it and the other main option is take out which was formerly Sageman cloud and this is what you do if you want somebody else to take care of it for you and the something else is William Stein from the University of Washington used doing this is the start up cacao costs of for between 4 and 20 dollars per student depending on how many students you have and how long the what the cost to lost for and can choose a form of course for a full year and it has its own integrated set of course tools and which includes a really fancy things like the instructor can even go in sort of lying and remotely collaborate with student and give them pointers still they're working on it so
before we come back to the pasted on local install question those handful of other tools that people said they were using and so on so the family is for converting to and from networks and sell anything that is a standard part due to the combating networks to other formats has but the other tools that you can use set of some people like to write any books in reStructuredText on march down and because there a big fan of their their editor that this is often people have big into emacs or vinyl like students and and the rituals that you can do that and then converted it into that and book filed Barroso tools if you want to for instance hand have a collection of books and then convert that election into 1 big Pediatr Handbook using light then you can do that and there are ways do use notebooks that's slideshows material has surrendered and that has an option to fail 2 slides there's also a plugin called drawings for Libya like I slideshow environment and which had gives you very similar-looking slides but they carried in these slides is still editable unrunnable so you can be changing things on the flying when you're doing your site and then finally it's possible to programmatically generated books so I don't have an example pointing to but 1 of people who responded says that he's with randomizing questions for assignments and the the Notebook file formats and the the NB format like online 3 make it quite easy to generate notebooks if that's what you want to do the so then coming back to the all local question so there's really a range of possibilities here in so you going from on the left take out it is it's in the cloud of somebody else deals with all of the technical details you just give him some money and you know where your students e-mail addresses in that and everything is set up for you this juice how where you you run the server yourself the experience from the students point of view is is broadly the same they just state where the oral and do everything in the browser and if your IT department is cooperative on the sort of thing that maybe I would to get installed on the institutions manage desktop systems so you can go a computer lab and with the students using university computers have or you can get students to install it themselves on their in computers so we have simplified this to be the 2 main possibilities all by the risk of all the students or the students have to be things themselves there are a few obvious advantages on either side so you will be hosted solution was nothing to install installation can often be obtained so this is a big plus a lot of people and and had students can and you can use it from the templates didn't have to have a lot more set up an annotation to be 1 of the people who does the course does the cost like this said they tell students they can bring a laptop or tablet and some students do bring a template and we suspect that if they told the students you need a lot of talk then this students from you got a laptop but preferring to work at least some students prefer to work on the tablet on the other hand installing it on students computers is is free it's assuming that students already have computers which I think in in most western countries is from the case as the and you're not at the mercy of any part of the network connection whether that's the network hardware on your laptop all the institutional Wi-Fi or the the broadband backbone over to whatever Servio using has any of that can go down and that an interrupt your userbase did so that's and this is a problem that quite a few of the people you are using local installations pointed out and managed anaconda by continuum has made all of this stuff a lot easier to get set up and I would say almost everybody who is you asking students to install it themselves is asking them to use on the Honda and because it's made it so much simpler there are a few people who disagree and these are a handful of perhaps less obvious things that you might want to consider as I say most of the automatic assignment engraving tools and we work will work best with pasted solutions there is I leave work underway in and be greater to integrate support for hand local installations as well but it's also trickier because you plot from differences may mean that you if somebody has got a slightly newer version of number height and they use a method that only in a new version and not on your grating Server than it works then but when they submit it then the tests fail this problems like that to be aware of and people also as suggested that the accuracy issues so you have using a local installation maybe privileged people who have had a nice computers just on it may privileged people who have some already got the technical know-how to have to easily install it and need that help with that and on the other hand the the advantage of having a Lakeland install is such the the software tools and materials from the costs are readily available after the of course is finished and I should say that Williams time makes cocoa vigorously disputes this and says that people of a new more likely to be to keep using that on a Lakeland install done on hand and installation it's it's questionable whether had yeah depends on how how powerful the free-to-air hosted services and whether students are going to continue paying the based in the the non createa and students is that probe Enoch independent steps you have to and so I think my kind of overview of this would be on the computing scale was part property part of what you want students to get from the courts so if you see the computing skills something incidental that you're near the students just need to use a computer to learn about this really important material then hosted solution probably makes everybody's life easier if you want to come along with this computing skills then happened during a local installation is probably worth the trouble hand and directly putting like translations classes about like 500 students and they say it is doable and it's also possible to combine means that some people said that they had 2 primary labor translations that ask students to fall back to the town solution if that isn't working some people say that they have the clout thing this primary but they encourage students to install it as well so I want to thank once again everybody from the future education mailing list and these 3 foundations the more Foundation this when Foundation and Helmsley trust fund I work on Jupiter and I think we have a couple of minutes till 4 questions b and
b you know and yeah
you and I denotes over microphone coming thanks to the interesting and nui introduction most examples you would gave well all scientific kinds all teaching but you also mentioned by using containers and national and how will at this is to that kind of work was really interested in knowing about the practicalities of it so from a technical point of view Jupiter has you first-class support for the notion of plugging different kernels into Jupiter season have different languages running inside the notebook is all came from Python that we we generalize the ideas for other languages at the bash kernel is actually something that I made and it was initially supposed to be just an example of how to use the helps to make a kernel for Jupiter and I don't really think it would be something that anybody was interested in using had than a 10th of the people were interested in using it and it works it was pretty well from the point of view if using batch what is tricky in all Jupiter kernels that's becomes more of a problem in batch is that the subprocess wants to do interactive input so like if you do Kondor install whatever then condo will you know this is these are the factors that I need you want to continue yes No you Duke share and the kernel can't tell the process is waiting for input so you will see the the output of that cell will say yes no but then there's no way to actually send the yes no back-to-back process hands that's kind of a limitation is you have to write all of the commands with the flying to say like the prompt me please that I when the and I have been using the part of the only book can make expect about the single old book yeah say yes but it's not a part of B. the Jupiter kernels system and so you Jupiter's to the conception of notebook is that each neighbor just has 1 language and that the the IPython kernels for notebooks has some of the same support different languages so if you start a shift at the start of cell with a sense sense batch and then all of the rest of that cell will be sent to botched to run so you can mix languages like that OK thank you by the way yeah yeah all macho difficult is to use stolen where should you be doing probable for itself along the Endesa and then I would say the problem into server is probably the most common target platform just to the guests and we aim at sort of not technical novices but like if your if your system administrator is that or PhD student in the group who's good with computers then we ain't cheap how should be should be practical for them to manage as it gets more complicated if the size classes is large enough that you want to spread the users over multiple servers have but this there are people who do that and I think that's pretty good documentation on how to do that so it should be it should be feasible feasible for somebody who use so for familiar with python doctor and things like this right so I can still in the fall in the Baltic universities and so I know about this is the in the greater the units pointers book I found just using the new value gains uh Ganges submit in the notebooks and is the file size so we tried to tell them to clear all the outputs and the many candidates and we get very very large notebooks is there any automated scripts can Poland hours in the suggestions for the future and yet there are some scripts that will clear the outputs of the net work ahead and that primarily primarily around some of version control tools paying for that and I think 1 of them is called in the strict out if you search for that it the yeah it well thank you would to talk about the web what modeling theory well on the day the saw and points so what you mention that slowing down right so that that's 1 reason I do this by the interest the use of a given so 1 of the reasons a the legacies of most of that is is that using here of the people in your book yeah this is so great mingle faster so what I usually do is that of the right to the delayed according to class of a book in the you have the class that is attached to the to the of good thinking process of our from which the solution which is usually us in the you year in your book with the conclusion at the sum of the water make I that the 1 thing that you that investors of the use of the cost you using 1 books but there are some things that depends on how long quotes is for 1 long codes of the video too long of course I know it's it would for example of the installation and set of 1 of its find the long variant 1 1 1 quarter would single the records the kind of modern linguistics and ontology less than the using and leaders of that works well for a long use importance of wood as it gives the user is reading 1 the 2 reporters you wanted something on the ad I haven't used and the greater myself I could imagine that's yeah it's probably too much work to set up and get people familiar with for the actual course and in terms of the installation and I've done Software Carpentry that's typically a 2 day workshop can that's know to the 2 days of intensive stuff and we get students set up with with anaconda and for Windows users and things like a back out on the morning of the 1st day before during the teaching on the morning of the 1st guy says I think it is it is practical even for short courses to get the stuff installed if that's if that's what you think the students should be taken away from it and the Software Carpentry it is so be willing to lunch the DPP thanks
Softwarewartung
Bit
Freier Ladungsträger
Sprachsynthese
Softwareentwickler
Ordnung <Mathematik>
Kontrollstruktur
Kondensation <Mathematik>
Browser
Versionsverwaltung
t-Test
Ruhmasse
Quick-Sort
Code
Computeranimation
Virtuelle Maschine
Funktion <Mathematik>
Perspektive
Software
Notebook-Computer
Server
Installation <Informatik>
Datenfluss
Versionsverwaltung
E-Mail
Beamer
Inverter <Schaltung>
Varietät <Mathematik>
Bildauflösung
Funktion <Mathematik>
Softwaretest
Parametersystem
Namensraum
t-Test
Modul
Gerade
Variable
Computeranimation
Last
Task
Datenverarbeitungssystem
Rechter Winkel
Last
Software
Notebook-Computer
Code
Garbentheorie
Matrizenrechnung
Fluid
Physikalischer Effekt
Diskretes System
Reihe
Rechnen
Quantenmechanik
Computeranimation
Quantisierung <Physik>
Konforme Feldtheorie
Gruppenkeim
Programmbibliothek
Quantisierung <Physik>
Numerische Strömungssimulation
Aggregatzustand
Notebook-Computer
Machsches Prinzip
Wissenschaftliches Rechnen
Modul
Computeranimation
Quantisierung <Physik>
Rechter Winkel
Notebook-Computer
Stapelverarbeitung
Computeranimation
Varietät <Mathematik>
Resultante
Algebraisches Modell
Offene Menge
Punkt
Prozess <Physik>
t-Test
Schreiben <Datenverarbeitung>
Mathematik
Dienst <Informatik>
Code
Raum-Zeit
Computeranimation
Ausdruck <Logik>
Open Source
Regulärer Graph
Prozess <Informatik>
Software
Notebook-Computer
Translation <Mathematik>
E-Mail
Einflussgröße
Softwaretest
Prozess <Informatik>
Mathematik
Orbit <Mathematik>
Aussage <Mathematik>
Mailing-Liste
Elektronische Publikation
Ereignishorizont
Quick-Sort
Datenverarbeitungssystem
Rechter Winkel
Mereologie
Dateiformat
Verzeichnisdienst
Software Engineering
Schlüsselverwaltung
Standardabweichung
Instantiierung
Punkt
Prozess <Physik>
Notebook-Computer
t-Test
Zellularer Automat
Zahlenbereich
Plug in
Physikalisches System
Quick-Sort
Computeranimation
Punkt
Sichtenkonzept
Notebook-Computer
Mereologie
t-Test
Versionsverwaltung
Mailing-Liste
Computeranimation
Konfiguration <Informatik>
t-Test
Computeranimation
Touchscreen
Softwaretest
Rückkopplung
Bildschirmmaske
Sichtenkonzept
Punkt
Notebook-Computer
Stichprobenumfang
Versionsverwaltung
t-Test
Computeranimation
Gebundener Zustand
Schreib-Lese-Kopf
Dienst <Informatik>
Sichtenkonzept
Punkt
Benutzeroberfläche
Momentenproblem
Notebook-Computer
Aggregatzustand
Computeranimation
Integral
Gradient
Übergang
Konfiguration <Informatik>
Punkt
Adressraum
Familie <Mathematik>
Versionsverwaltung
t-Test
Gruppenkeim
Computeranimation
Freeware
Arbeit <Physik>
Datenverarbeitungssystem
t-Test
Translation <Mathematik>
E-Mail
Softwaretest
Zentrische Streckung
Sichtenkonzept
Hardware
Kategorie <Mathematik>
Template
Stellenring
Konfiguration <Informatik>
Arithmetisches Mittel
Rechenschieber
Texteditor
Generator <Informatik>
Dienst <Informatik>
Menge
Datenverarbeitungssystem
Login
Server
Dateiformat
Mooresches Gesetz
Programmierumgebung
Aggregatzustand
Instantiierung
Subtraktion
Web Site
Klasse <Mathematik>
Zahlenbereich
Kartesische Abgeschlossenheit
Spannweite <Stochastik>
Bildschirmmaske
Computerspiel
Software
Fächer <Mathematik>
Datennetz
Notebook-Computer
Passwort
Installation <Informatik>
Zeiger <Informatik>
Grundraum
Hilfesystem
Einfach zusammenhängender Raum
Open Source
Stochastische Abhängigkeit
Kontinuumshypothese
Mailing-Liste
Plug in
Physikalisches System
Quick-Sort
Integral
Turing-Maschine
Tablet PC
Mereologie
Single Sign-On
Streuungsdiagramm
Webforum
Gewichtete Summe
Punkt
Prozess <Physik>
Gemeinsamer Speicher
Formale Sprache
Gruppenkeim
Versionsverwaltung
t-Test
Computeranimation
Kernel <Informatik>
Videokonferenz
Einheit <Mathematik>
Bildschirmfenster
Skript <Programm>
Funktion <Mathematik>
Verschiebungsoperator
Sichtenkonzept
Datennetz
Güte der Anpassung
Ein-Ausgabe
Teilbarkeit
Gruppenkeim
Menge
Rechter Winkel
Datenverarbeitungssystem
Server
Mooresches Gesetz
Subtraktion
Wasserdampftafel
Klasse <Mathematik>
Zellularer Automat
Term
Systemplattform
Multiplikation
Datensatz
Benutzerbeteiligung
Software
Notebook-Computer
Inverser Limes
Modelltheorie
Zeiger <Informatik>
Ontologie <Wissensverarbeitung>
Systemverwaltung
Einfache Genauigkeit
Physikalisches System
Elektronische Publikation
Quick-Sort
Differenzkern
Mereologie
Codierung
Stapelverarbeitung
Verkehrsinformation

Metadaten

Formale Metadaten

Titel Jupyter notebooks for teaching and learning
Serientitel EuroPython 2017
Autor Kluyver, Thomas
Lizenz CC-Namensnennung - keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben
DOI 10.5446/33805
Herausgeber EuroPython
Erscheinungsjahr 2017
Sprache Englisch

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract Jupyter notebooks for teaching and learning [EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1] [Rimini, Italy] The Jupyter Notebook (formerly IPython Notebook) has been used to support learning in different scenarios, including taught courses, self-directed learning and reference material such as software documentation. People have used it to learn how to program, and to learn about diverse subjects where computer code is important to human understanding. The aim of this talk is to dive into where and how notebooks can be used most effectively for education. I will first describe notebook-based learning material created by a variety of people for different purposes, deliberately taking a broad definition of ‘education’, along with my own experiences using notebooks to teach Software Carpentry sessions and conference tutorials. I’ll pull out both strengths and limitations of notebooks as an educational tool to explore how they can be used most effectively. In the second part of the talk, I’ll talk about several extra software tools which can make the notebook more valuable in educational settings, including Jupyterhub, with which a teacher can provide notebook servers for a group of students, nbgrader, which allows notebooks to be used as assignments, and cite2c, which can insert academic citations into notebooks. I’ll also touch on commercial offerings integrating the notebook, such as SageMathCloud

Ähnliche Filme

Loading...
Feedback