
Options for giving math talks and lectures online - chmaynard
https://terrytao.wordpress.com/2020/03/10/options-for-giving-math-talks-and-lectures-online/
======
sigstoat
There's a respondent on the page suggesting OBS, the Open Broadcaster
Software. I think that's the way to go. If you need to feed it in to Zoom or
Skype or something, you should be able to use OBS-VirtualCam (haven't tried it
myself, yet) [https://obsproject.com/forum/resources/obs-
virtualcam.539/](https://obsproject.com/forum/resources/obs-virtualcam.539/)

one camera aimed at you, and another one aimed at your desk, with some
different scenes set up in OBS for focusing on you, the desk, or some
powerpoint slides.

then let students use the textual chat feature. (just plain superior to taking
audio from 20+ students simultaneously. that'll never turn out well.)

~~~
sigstoat
i wasn't aware these were a thing:

[https://www.amazon.com/IPEVO-Definition-Document-
Camera-5-88...](https://www.amazon.com/IPEVO-Definition-Document-
Camera-5-880-4-01-00/dp/B079DLTG9F/)

might be a nice way to aim a camera at your desk.

------
hackermailman
Flipped class example
[https://youtu.be/zec5cq6WiAk](https://youtu.be/zec5cq6WiAk) the students
participate in live chat and sign into some software (Canvas and Gradescope)
to answer exercises. Twitch stream/Youtube works fine though MIT has some kind
of video software that automatically follows the lecturer with numerous angles
for blackboards
[https://video.odl.mit.edu/collections/99c40d462fcf457e961185...](https://video.odl.mit.edu/collections/99c40d462fcf457e96118521cbc0ee62/)

------
wespiser_2018
I know the world is going to change because of COVID-19. I'm just not sure how
much, or for how long. If one good thing comes out of this, forcing every
college teacher in the US to teach remotely for the rest of the semester might
lead to some interesting innovation!

------
radicalbyte
Twitch do streaming really well and you can use Discord to chat.

Half the students will already be on Discord and probably on Twitch too.

For a blackboard, why? With a computer you have infinite space as long as
you're using some kind of note taking software. I know that I've abused
OneNote's live editing feature to draw on my laptop screen via my tablet +
pen. Plus everything electronic can be exported and shared.

~~~
copperx
What are the advantages of Twitch over something more business-y like Zoom?

~~~
radicalbyte
I've had better experience with the consumer/gaming tools than I have with
"Business" tools. It's probably because they stay more focussed whilst the
business tools morph into hydras as part of their data lock-in strategies
(here's looking at you, Slack).

~~~
scrumbledober
discord voice chat is miles beyond nicer than slack or zoom.

------
unishark
I just went out and bought a drawing tablet peripheral for about $60. I share
the screen with slides on one side and onenote on the other, and write on
onenote with the tablet like a whiteboard. I've already done a couple lectures
and in some ways it's better than the real thing since you just continually
scroll the notes you are producing and all is in one field of view.

On the other hand I've been trying to use google forms with little quizzes for
periodic feedback and that's been terrible. No matter how basic a question you
ask, some students will take 100x too long trying to research the answer on
google or just hiding or who knows what. And you just have to cut half the
class off with no responses if you want to move on in a reasonable time.
Putting students on the spot by walking over to them in person is the only way
to get some students to participate.

------
xenonite
Last week, I tried teaching half of the university class in person, and the
other half watched online. I sat at the desk in the classroom and streamed
with Microsoft Teams

1) a video of me (using the selfie-camera on the iPhone) and

2) the screen content of my iPad, where I used the Pencil to write on
PowerPoint slides.

What was my experience? I missed a live feedback, both during lecturing, and
while answering questions. I sort of talked into the void. Luckily there were
still students in the same room, so I got a visual response here. However I
think the feedback could be improved very much if each of the remote students
would also stream their video (all at once, without audio). I hope this allows
to have a more 'class-roomy' experience, also among the students themselves.
Is there anyone with a similar setup and experience?

~~~
saagarjha
> I missed a live feedback, both during lecturing, and while answering
> questions.

Perhaps you could integrate some sort of chat for this?

~~~
xenonite
There is a live chat functionality, yes, thank you for the idea. In terms of
feedback, I miss fine detail, just in the moment: For example, if the students
appear overwhelmed by an explanation, or if they like a joke.

------
hypersoar
Since a lot of people are or will be administering exams, I want to put in a
plug for the wonderful Gradescope (with which I have no association other than
as a former user, and they sent me a t-shirt). I used it in my classes a
couple years ago when I was a graduate student. It _massively_ streamlines the
process of grading. Relevant to the current outbreak is the ability to easily
return graded items to the students through the service. You can even handle
regrade requests, should you choose to enable them. They also now seem to have
some test-administration capabilities, but I've never used that.

The process for using it goes like this:

1\. Upload a blank exam and mark where names and answers are (so, e.g.,
they'll know where on each exam to expect the student's answer to 2(b)).

2\. Scan and upload the finished exams. Most copying machines can handle this
pretty easily.

3\. Use an OCR-assisted process to match exams to names or student ID numbers.
Without ID numbers, this took me under 2 minutes for 40-50 students.

4\. As you grade each problem, you make notes and deductions as you go. e.g.
"You forgot the +C, -1 point". If you see the same error again, you can use a
hotkey to affix the same note and deduction to subsequent exams. You can also
grade additively, if you prefer. And you don't have to deal with stacks of
paper exams.

5\. If you decide to alter a note, or that you were to harsh or lenient on a
particular error, the changes are applied to all exams with that mark. This
takes a lot of pressure off of your initial grading decisions ("Oh, shit, it
looks like getting that was harder than I thought. Should I go through all the
exams and lower their deductions?"). The notes support LaTeX math symbols.

6\. Once you're finished grading, you don't have to tally and enter the
grades. No more worrying about final-grade-altering addition errors. You can
export the results as a spreadsheet. You get granular, question-level data on
how everyone did. You can publish the results to students. If you choose to
accept regrade requests, you can do so without worrying about post-return
alterations of answers.

This is all without their upgraded AI-assisted service. It slashed about 75%
off of the time I spent on grading and 90% off the stress of grading fairly
and consistently. And it gets even better if you have multiple graders with
their team service; no more coordinating the passing around of exams! Everyone
can work at the same time.

It's an absolute _godsend_ if you have a lot of grading to do. I can't
recommend it highly enough.

------
westurner
One option: screencast development of a Jupyter notebook.

Jupyter Notebook supports LaTeX (MathTeX) and inline charts. You can create
graded notebooks with nbgrader and/or with CoCalc (which records all
(optionally multi-user) input such that you can replay it with a time slider).

Jupyter notebooks can be saved to HTML slides with reveal.js, but if you want
to execute code cells within a slide, you'll need to install RISE:
[https://rise.readthedocs.io/en/stable/](https://rise.readthedocs.io/en/stable/)

Here are the docs for CoCalc Course Management; Handouts, Assignments,
nbgrader: [https://doc.cocalc.com/teaching-course-
management.html](https://doc.cocalc.com/teaching-course-management.html)

Here are the docs for nbgrader:
[https://nbgrader.readthedocs.io/en/stable/](https://nbgrader.readthedocs.io/en/stable/)

You can also grade Jupyter notebooks in Open edX:

> _Auto-grade a student assignment created as a Jupyter notebook, using the
> nbgrader Jupyter extension, and write the score in the Open edX gradebook_

[https://github.com/ibleducation/jupyter-edx-grader-
xblock](https://github.com/ibleducation/jupyter-edx-grader-xblock)

Or just show the Jupyter notebook within an edX course:
[https://github.com/ibleducation/jupyter-edx-viewer-
xblock](https://github.com/ibleducation/jupyter-edx-viewer-xblock)

There are also ways to integrate Jupyter notebooks with various LMS / LRS
systems (like Canvas, Blackboard, etc) "nbgrader and LMS / LRS; LTI, xAPI" on
the "Teaching with Jupyter Notebooks" mailing list:
[https://groups.google.com/forum/#!topic/jupyter-
education/_U...](https://groups.google.com/forum/#!topic/jupyter-
education/_UP-VjBYXJE)

"Teaching and Learning with Jupyter" ("An open book about Jupyter and its use
in teaching and learning.") [https://jupyter4edu.github.io/jupyter-edu-
book/](https://jupyter4edu.github.io/jupyter-edu-book/)

~~~
westurner
> _TLJH: "The Littlest JupyterHub" describes how to setup multi-user
> JupyterHub with e.g. Docker spawners that isolate workloads running with
> shared resources like GPUs and TPUs:
> [http://tljh.jupyter.org/en/latest/](http://tljh.jupyter.org/en/latest/) _

> _" Zero to BinderHub" describes how to setup BinderHub on a k8s cluster:
> [https://binderhub.readthedocs.io/en/latest/zero-to-
> binderhub...](https://binderhub.readthedocs.io/en/latest/zero-to-binderhub/)
> _

If you create a git repository with REES-compatible dependency specification
file(s), students can generate a container with all of the same software at
home with repo2docker or with BinderHub.

> _REES is one solution to reproducibility of the computational environment._

>> _BinderHub ([https://mybinder.org/](https://mybinder.org/) ) creates docker
containers from {git repos, Zenodo, FigShare,} and launches them in free cloud
instances also running JupyterLab by building containers with repo2docker
(with REES (Reproducible Execution Environment Specification)). This means
that all I have to do is add an environment.yml to my git repo in order to get
Binder support so that people can just click on the badge in the README to
launch JupyterLab with all of the dependencies installed._

>> _REES supports a number of dependency specifications: requirements.txt,
Pipfile.lock, environment.yml, aptSources, postBuild. With an environment.yml,
I can install the necessary CPython /PyPy version and everything else._

>
> _REES:[https://repo2docker.readthedocs.io/en/latest/specification.h...](https://repo2docker.readthedocs.io/en/latest/specification.html)
> _

> _REES configuration
> files:[https://repo2docker.readthedocs.io/en/latest/config_files.ht...](https://repo2docker.readthedocs.io/en/latest/config_files.html)
> _

> _Storing a container built with repo2docker in a container registry is one
> way to increase the likelihood that it 'll be possible to run the same
> analysis pipeline with the same data and get the same results years later._

------
analog31
If I were faced with switching to this mode quickly, and not futzing with a
lot of technology, I'd think about rigging up a web cam to look down on a pad
of paper.

