diff --git a/TeachingHowTos/EmbedLivePolls.ipynb b/TeachingHowTos/EmbedLivePolls.ipynb index ba10d46..a50539e 100644 --- a/TeachingHowTos/EmbedLivePolls.ipynb +++ b/TeachingHowTos/EmbedLivePolls.ipynb @@ -1,150 +1,150 @@ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# How to embed live polls into my notebooks?\n", "\n", "\n", "
\n", "\"SpeakUp\n", "\"SpeakUp\n", "
\n", "\n", "Live polling in a notebook can help you **monitor how many students are currently working** on your notebook, for instance by integrating a poll right at the beginning of your notebook. \n", "It can also provide you with live feedback on students' understanding of the contents of your notebook as well as on how fast they make progress, for instance by integrating a poll at the end of each exercise.\n", "\n", "In this notebook, we present how to **create live polls in [SpeakUp](http://speakup.epfl.ch/)** and **embed polls into your notebooks**. \n", "\n", "The figure on the right shows an example of what a live poll can look like, before and after a student submits an answer.\n", "\n", "To see an example of a notebook including a live poll, have a look at the [demo](#DemoSection) at the end of this notebook. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Why use SpeakUp?\n", "\n", "There are other ways to create live polls and embed them into notebooks, but SpeakUp has a major advantage: it is a **free software** developped jointly by UNIL and EPFL, which means that **user data is hosted on campus**. \n", "\n", "In addition, SpeakUp exists both as a [web app](https://speakup.epfl.ch/) and as an iOs/Android client. It also combines seamlessly both polling features but also messaging features ([more information here](http://speakup.info/features)).
\n", "Of course, SpeakUp can also be used independently from notebooks!\n", "\n", "In the following, we detail the steps to set up a SpeakUp chatroom, create a poll and integrate it into a notebook." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step 1: create a chatroom\n", "\n", "The basic element of interaction in SpeakUp is called a chatroom. A chatroom is a virtual space that students can join to see your polls (or to discuss with you or among themselves).\n", "\n", "When you arrive on the [web interface of SpeakUp](https://speakup.epfl.ch/), you can create a chatroom by simply clicking on the button `Create New Room +`. A room has to be provided with a name. \n", "We also recommend you to **make the room permanent**, otherwise it will be automatically deleted after 24 hours of inactivity.\n", "\n", "\n", "\n", "If you do not want students to use your chatroom to discuss with you or among themselves, then you can **disable posting**. In this case, only you will be able to post polls or messages in the chatroom.\n", "\n", "\n", "\n", "\n", "Finally, we highly recommend that you **generate and save an \"Admin Key\"** for your newly created chatroom. This key will allow you to recover your admin rights in case you empty the cache of your web browser for instance. This key is to be used in place of the room number, just as if you were to join the room.\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step 2: create a poll\n", "\n", "To create a poll, click on the `+` button in the toolbar at the bottom of the chatroom. Only the creator (owner) of the room can see this button and create polls.\n", "\n", "\n", "\n", "Select the options that you want for your poll, then click on the arrow button on the right side.\n", "\n", "\n", "\n", "From within SpeakUp, you will be able to monitor the poll in real time and see both **the number of respondents** and the proportion of respondents choosing each of the poll options. \n", "The button at the bottom left allows you to **close the poll** to stop participants from voting (you can reopen it) and the button at the bottom right allows you to **show the poll results** to participants (otherwise they don't see it).\n", "\n", "\n", "\n", "On their side, students will interact with the poll from within your notebook." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step 3: embed the poll into a notebook\n", "\n", "To embed a poll into a notebook, you have to actually embed the whole chatroom. \n", "To do this, you will need to get the **number** of your room. In the following example, the room number is `82529`.\n", "\n", "\n", "\n", "You can copy the piece of code below and paste it in a code cell.\n", "Then, in the URL, **replace the part `ROOMNUMBER` by the actual number** of your room. \n", "\n", "```Python\n", "from IPython.display import IFrame\n", "IFrame('https://speakup.epfl.ch/ng/room/ROOMNUMBER', 600, 600)\n", "```\n", "\n", - "With the example above, the URL would be: `https://speakup.graasp.eu/ng/room/82529`.\n", + "With the example above, the URL would be: `https://speakup.epfl.ch/ng/room/82529`.\n", "\n", "And that's it! When they will execute the cell, students will see the poll you have created in your SpeakUp room directly in the notebook. \n", "The poll will be automatically updated and refreshed when you, as a teacher, interact with it as we have seen above." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Demo\n", "\n", "**Try it!** Execute the cell to see the poll and vote." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from IPython.display import IFrame\n", "IFrame('https://speakup.epfl.ch/ng/room/62858', 600, 600)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.9" } }, "nbformat": 4, "nbformat_minor": 4 } diff --git a/TeachingHowTos/EmbedQuizQuestions.ipynb b/TeachingHowTos/EmbedQuizQuestions.ipynb index ac9e85f..4821f27 100644 --- a/TeachingHowTos/EmbedQuizQuestions.ipynb +++ b/TeachingHowTos/EmbedQuizQuestions.ipynb @@ -1,210 +1,224 @@ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# How to add auto-corrected quiz questions to my notebooks?\n", "\n", "\n", "
\n", "\"Moodle\n", "\"Moodle\n", "
\n", "\n", "Interactive quiz questions are a great way to engage students with the content of the notebook and to help them check their understanding. \n", "In this notebook, we present how to **create quiz questions in [moodle](https://moodle.epfl.ch)** (using the H5P plugin) and **embed the questions into your notebooks**. \n", "\n", "The figure on the right shows an example of what it can look like, before and after a student submits an answer.\n", "\n", "To see an example of a notebook including quiz questions, have a look at our [\"Suspended Objects\" example](../TeachingExamples/SuspendedObjects-exercise.ipynb) or at the [demo](#Demo-) at the end of this notebook. \n", "\n", - "
 
\n", - "\n", - "\n", + "
 
" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## Why use moodle?\n", "\n", "

There are other ways to integrate quiz questions into notebooks but the solution we suggest here has a very important characteristic: the data collected on students' responses is stored on the EPFL moodle server.
\n", "This is extremely important in order to be consistent with the data protection and professional confidentiality provisions of Swiss law.

\n", "\n", "In addition, using moodle to create quiz questions has **a number of advantages**:\n", "* The moodle H5P plugin for creating quiz questions offers a [wide range of question types](https://h5p.org/content-types-and-applications) with multiple options to customize them ;\n", "* You don't need to write code to correct the quiz questions, the moodle H5P plugin has multiple options that allow you to give feedback automatically to students when they answer the quiz ;\n", "* In your moodle page, you will be able to see how people answer your quiz question, which can give you useful feedback ;\n", "* The quiz questions that you create in moodle can be reused for different purposes (e.g. learning activities in moodle) and they can also be exported / imported.\n", "\n", - "However, this solution (as any other) has some limitations.\n", - "\n", + "However, this solution (as any other) has some limitations." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## Limitations \n", "\n", "You need to **have a moodle course page** for creating the quiz questions and you need to have the \"teacher\" (or \"manager\") role on this page to be able to edit it. \n", "We suggest you use the moodle page of one of your courses. In case this is not possible or not adapted for your project, don't hesitate to [contact us](mailto:noto-support@groupes.epfl.ch) to discuss other options.\n", "\n", "One important limitation of this is that **the way in which you set up registrations on your moodle course** will impact **who can see your quiz questions in your notebooks**.
\n", "Please check below who will have access to your quiz questions before anything else. \n", "\n", - " \n", - "\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## Step 0: check who will have access to your quiz questions \n", "\n", "In your moodle course, go to the \"Participants\" page, check the \"Enrolment methods\" which are activated on your course.\n", "\n", "Here is who will have access to your quiz questions depending on the enrolment methods activated (these enrolment methods can be combined):\n", "1. **\"External database\"**: students who are registered on your course on IS-Academia have access to your quiz questions. \n", "This is the option recommanded so that your students can use your quiz questions.\n", "1. **\"Manual enrolment\"**: you have to add manually the persons who will have access to your quiz questions (they need to have a GASPAR account).\n", "1. **\"Self enrolment\"**: anyone with a GASPAR account can register to your course and have access to your quiz questions. \n", "This is the option recommanded so that any EPFL students and member of EPFL staff can use your quiz questions.\n", "1. **\"Guest access\"**: anyone from the general public can see your moodle page and have access to your quiz questions without being logged on. \n", "This is the option recommanded so that the general public can use your quiz questions. However, one important drawback of this method is that you will no longer be able to see how people answer your quiz (and it also means the whole content of your moodle page is public).\n", "\n", "Please note that for methods 1, 2 and 3, people have to be **logged on moodle** when they use your notebooks so that they see your quiz questions. It is recommended to add a short sentence indicating that if they don't see the quiz then they need to log on moodle.\n", "\n", "Make sure to activate the appropriate enrolment methods depending on the audience who will use your notebooks. \n", "When someone does not have access as per the enrolment methods above, here is what they see in place of the quiz question in the notebook:\n", "\n", "\"No\n", "\n", "\n", - " \n" + " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step 1: create a quiz question in moodle\n", "\n", "\n", "You need to *turn editing on* your moodle page before proceeding to the next steps.\n", "\n", "

Add a hidden section to your moodle page

\n", "\n", "We suggest that you create an additional section (\"topic\") in your moodle course page, which will serve as a container for your quiz questions. \n", "To add a section, then go at the bottom of the moodle page and click on \"Add topics\".\n", "\n", "We also suggest that you hide this section from your moodle page so that the quiz question are visible only in the notebooks - of course, if you want your students to see the questions in your moodle page then skip this step. \n", "At the top of the section, select \"Edit\" then \"Hide topic\". A blue tage should appear just below the title of the section saying `Hidden from students`.\n", "\n", "\n", "

Create a question

\n", "\n", "To create a new quiz question, use the \"Add an activity\" dropdown menu and then choose \"Interactive content\" as shown on the figure below. \n", "Attention: do not select the \"quiz\" option in the dropdown menu (this type of quiz cannot be embedded in a notebook).\n", "\n", "\"Interactive\n", "\n", "Select the type of question that you want in the list and click on it.\n", "\n", "\"Content\n", "\n", "Fill out the form to create your question, then choose \"Save and return to course\".\n", "\n", "

Make the question available

\n", "\n", "If your question is placed in a hidden section as we have suggested, then you have to indicate to moodle that you want to make the quiz question available outside of moodle (i.e. in your notebooks). On the right side of the activity, select the \"Edit\" menu and then click on \"Make available\", as shown on the image below. \n", "NB: this step is not necessary if the question is in a visible section of the moodle page (by default it is then available).\n", "\n", "\"Make\n", "\n", "Once this is done, a blue tag saying `Available but not shown on course page` should appear right below your quiz question.\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step 2: embed the question into a notebook\n", "\n", "

Get the URL of your question

\n", "\n", "From your moodle page, click on your new question. This will open your question and show you how it will look like for students. \n", "Click on the \"<> Embed\" link at the bottom of the question, as shown on the figure below. Copy the code which appears in the \"Embed\" popup.\n", "\n", "\"Embed\"\n", "\n", "Paste the code into your favorite text editor and find the URL of the question, which should appear between quotes after ` ') \n", "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Demo \n", "\n", "To be able to see the demo quiz question, you need to be logged on moodle and registered as participant on our moodle course (see the [Limitations section](#LimitationsSection)). \n", "Please open a new tab or window, **log on [moodle](https://moodle.epfl.ch/enrol/index.php?id=15917)** and **register yourself on the [Noto Community moodle page](https://moodle.epfl.ch/enrol/index.php?id=15917)**. \n", "\n", "**Try it!** Execute the cell below to activate the interactive quiz. \n", "\n", "" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from IPython.display import IFrame\n", "IFrame('https://moodle.epfl.ch/mod/hvp/embed.php?id=1028285', 800, 600)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you see the message `Vous n'avez pas accès à ce contenu. Essayez de vous connecter.`, check that you are logged on [moodle](https://moodle.epfl.ch/) using your GASPAR account and that you are registered as participant on the [Noto Community moodle page](https://moodle.epfl.ch/enrol/index.php?id=15917)." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.9" } }, "nbformat": 4, "nbformat_minor": 4 } diff --git a/TeachingHowTos/GetFeedback.ipynb b/TeachingHowTos/GetFeedback.ipynb index 5884223..168fd23 100644 --- a/TeachingHowTos/GetFeedback.ipynb +++ b/TeachingHowTos/GetFeedback.ipynb @@ -1,101 +1,106 @@ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# How to get feedback from students on your notebooks?\n", "\n", "Getting feedback from students on the notebooks you use in your teaching is very important to be able to improve them in a meaningful way. \n", "We offer two ways in which you can get feedback from students on your notebooks:\n", "1. Through a **[short generic online survey](#generic)** integrated into your notebooks\n", - "2. Through a more **[detailed survey](#specific)** which can be **customized to your needs** and administered online or on paper in your class\n", - "\n", + "2. Through a more **[detailed survey](#specific)** which can be **customized to your needs** and administered online or on paper in your class" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## Short generic survey  \n", "\n", "We provide a generic survey that you can embed into your notebooks to **collect anonymous feedback** from those who use your notebooks. \n", "The survey is designed to be short and easy to fill out, with three questions (both in English and French) focusing on helpfulness, usability and a free text field for comments. You can see the survey form below. \n", "The survey will automatically collect data for you. We then process the data and provide you with a summary of the feedback regularly. \n", "\n", "How to use it?\n", "\n", "**Step 1:** Add a cell to your notebook and copy the following piece of Python code in it (below is the code to use in R):\n", "\n", " ```python\n", "from IPython.display import IFrame\n", "IFrame('https://www.surveymonkey.com/r/NOTOSURVEY?notebook_set=COURSENAME¬ebook_id=NOTEBOOKNAME', 600, 800)\n", "```\n", "\n", "**Step 2:** In the code, replace the two following elements (attention: DO NOT USE SPACES, use dash or underscore to replace spaces):\n", "* `COURSENAME`: replace by name of the project or course, e.g. `MecaDRIL` or `PHYS-101`\n", "* `NOTEBOOKNAME`: replace by the name or code of the notebook in the course, e.g. `01-Logan` \n", "\n", "\n", "Example of complete URL: \n", "`https://www.surveymonkey.com/r/NOTOSURVEY?notebook_set=MecaDRIL¬ebook_id=01-Logan`\n", "\n", "**Optional:** It can be useful to add one line of text above the code cell with the survey to indicate to your students that you would appreciate their feedback on your notebook. \n", "You could use something like: *Did you like this Notebook? Why don't you give us some feedback using the completely anonymous form below (just execute the cell to see it)? Thank you!*\n", "\n", "**Demo:**\n", "\n", "Execute the cell below to see the survey:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from IPython.display import IFrame\n", "IFrame('https://www.surveymonkey.com/r/NOTOSURVEY?notebook_set=noto-poc-notebooks¬ebook_id=survey-monkey-demo', 600, 900)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you use R, here is the equivalent code:\n", "\n", "```R\n", "library(IRdisplay)\n", "IRdisplay::display_html(' ') \n", "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Detailed customized survey  \n", "\n", "If you would like to have **more detailed feedback** or if these questions do not match your context, then we can **design a survey** for you. \n", "You can see [in this file an example of a questionnaire](Docs/NotebookSurvey.pdf) with customized questions, which can be administered either on paper in your class or online. We can help you with designing the questions, administering the questionnaire as well as analyzing the data.\n", "\n", "Just **drop us an email at [noto-support@groupes.epfl.ch](mailto:noto-support@groupes.epfl.ch)** if you would like to use one of those questionnaires." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.9" } }, "nbformat": 4, "nbformat_minor": 4 }