Authoring and presenting university courses with Emacs and a full libre software stack
James Howell
Format: 21-min talk; Q&A: BigBlueButton conference room
Status: Q&A to be extracted from the room recordings
Talk
Duration: 20:53 minutes00:00.000 Introduction 01:12.440 Presenting 01:47.820 Hardware 04:46.610 Example setup 05:30.520 Presentation software: flexibility in function 07:05.950 Live demonstration 07:59.850 OBS 10:26.060 Animation 10:55.790 Emacs 11:42.260 Making slides and handouts with Org Mode 13:22.680 Pedagogy first 16:17.790 org-teach 19:38.330 Blank slides 19:50.050 Animations 20:19.270 Conclusion
Q&A
Description
Resources: https://git.sr.ht/~jamesendreshowell/org-teach
Relying exclusively on free and open source software for teaching science courses at a large university? With GNU Emacs at the center of these workflows? It's not only possible, it's much more flexible and empowering than being locked into proprietary platforms. We will step through the entire software stack and workflows for authoring and presenting lessons, authoring and evaluating assessments, and engaging students both in person and in fully online teaching environments.
About the speaker:
James Endres Howell has taught Molecular and Cell Biology, Biochemistry, Microbiology, Immunology, Toxicology, and Molecular Medicine at Penn State since 2006. Recently Dr. Howell has developed popular courses for non-science majors in Genetics, Ecology and Evolution; Science in Literature; and Science in Society. He has used Emacs daily since 1988.
Discussion
Notes
- I'm digging the weather-report style with your pointing at the screen
- I'm using org-mode to study for exams rather than present lectures recently btw. I like to copy questions in the org file and add notes as I work through the questions on paper.
- Q: do you use org-present or something like that?
- A: Nope, just a normal Org buffer. I have a few custom keybindings for narrowing to headlines and such, when I do use Emacs for presenting. (Coming up in a few slides)
- Next step: libre hardware
- ahh he broke the fourth...fifth?...wall!
- bookmarking xournal+++ for sure
- Living dangerously now.
- he's definitely a wizard!
- OBS looks very useful. Must explore.
- I had never thought of using OBS for presentations like that... this has to be the slickest setup there is
- my students all seem to come to class with tablets these days and they annotate the PDF of all of my slides. When I realised they were doing this, I decreased the density of material on each slide to ensure there was enough space for their notes.
macros are a very powerful and useful feature of org for complex documents!
Feedback
- Damn, this looks really really useful
- This presentation is damn cool, LOL.
- excellent talk! Thank you.
- Thanks for the talk, it was very interesting!!
- Fantastic. I think this talk will be a reference for years to come!
- Great stuff!
- You are one of my heroes now! 👏👏👏👏👏
- Brilliant talk James, inspiring stuff
Great system!
Download the handout (27MB PDF):
- The whole repository: https://git.sr.ht/~jamesendreshowell/org-teach
- Resolution kinda low.
- No, sorry! It was the best I was able to record.
- okay, it's fine.
- No, sorry! It was the best I was able to record.
- OBS is cool.
- I use pdfpc (can also present and draw, but command line) -
https://pdfpc.github.io/
- Also, pdfpc supports videos/animations in presentations
- Hm! I will look into it!
- Kinda mute?
- I don't know why!
- On publishing lectures/books - another classic example is John
Kitchin's https://github.com/jkitchin/dft-book
- Kitchin is a monster! He must have made a deal with the devil or
something.
- I suspect that it is what Assistant Prof position does to people
- Kitchin is a monster! He must have made a deal with the devil or
something.
- Pedagogy first "development"
- Materials must provide a way to take notes on
- Separate the work of writing/developing/scaffolding from slide wrangling
- THe org-teach allows for grabbing a slide from another repository (e.g. don't repeat knowledge)
- If you want to highlight org mode documents you can use
https://github.com/nobiot/org-remark. If you use Org Remark with
https://github.com/alphapapa/org-web-tools you can get an offline
backup af a web page that you can highlight and edit
- Wow. I will look into these.
- Macros are a cool idea!
- Are org-mode macros a new concept/learning for you?
- Surely not (I am a contributor). But it is a new idea to use
them for beamer presentations.
- Yeah, I loved see other ways folks use macros. I've done some of that for Beamer, but only recently.
- Surely not (I am a contributor). But it is a new idea to use
them for beamer presentations.
- Are org-mode macros a new concept/learning for you?
- I use org-transclusion
(https://github.com/nobiot/org-transclusion) for include other
document.
- It sounds like the include other file might be for including
non-org-mode files; does org-transclusion provide that
functionality?
- yep~, quit powerful.
-
- opps, I double check the manual. It seems mainly for human readable source code (txt, md, source code). I don't think it works with Pdf ...
-
- yep~, quit powerful.
- It sounds like the include other file might be for including
non-org-mode files; does org-transclusion provide that
functionality?
- OBS TIP -- You can use an android app like OBS Blade to control obs
from android
- Cool, thanks!
- CRDT.el https://code.librehq.com/qhong/crdt.el -- This can allow
multiple people with thier own Emacs Configs to edit a hosted emacs
buffer at the same time
- Awesome
Questions and answers
- Q: I'm curious how the xournal stylus work is composited with OBS
- Q: that entire screen was xournal at the time? I was thinking the slide was a different screen / software
- A: All the slides are presented via Xournal++. The "slides" frame is video capture from the tablet, running Xournal++.
- Q: Do you have a fancy OBS scene changer to switch between the software being presented?
- A: I just map scenes to function keys on the keyboard.
- Q: How you overlap yourself with the presenation? It's so cool.
- A: OBS provides a chroma key "filter"
- it's so cool! with DNA demo.
- A: OBS provides a chroma key "filter"
- Q: How you deal with Video in Beam? I found it's so hard to do
that. PPT on the other hand is so easy to achieve.
- A: I use Beamer export to make static slides, that I present via Xournal++. Videos, I present via VLC. So I use OBS to switch back and forth between Xournal, VLC, Firefox, etc.
- The above-mentioned pdfpc provides a LaTeX package to link
videos right to pdf (battle-tested on conferences ;))
- Thanks, I will have a try.
- Thank you!
- Q: Do you ever use things like Org Presnet and stay forgo powerpoint
slidees
- A: I've tried them but my core need is to annotate PDFs with the stylus in real time, so the best solution is Xournal++
- Q: Is the {{{ }}} syntax an Org Mode core feature that I have missed
so far, or did you program that? (Btw, thank you for the great
talk🙏)
- A: https://orgmode.org/manual/Macro-Replacement.html
- Some export backends allow for conditionals in the macro
replacement; when exporting to Hugo you can add an @@hugo
within the resolved macro.
- @@backend:...@@ is a separate construct - you do not have to use it in combination with macros. For example, see @@html example in https://orgmode.org/manual/Quoting-HTML-tags.html
- Some export backends allow for conditionals in the macro
replacement; when exporting to Hugo you can add an @@hugo
within the resolved macro.
- Thank you very much, I'll definitively look into this🙏
- A: https://orgmode.org/manual/Macro-Replacement.html
- Q: What kind of (comparative) feedback are students giving you
regarding your approach?
- A: They love it! All accounts were that my courses were much more successful than other instructors'.
- Q: You also teach English at Uni? cool
- A: Yes, it's a fun course.
- Q: Is the input from the Surface captured by OBS and all of that combined goes to Jitsi or Zoom? Correct?
Transcript
[00:00:00.000] Introduction
Hello everyone. I'm James Howell. I teach biochemistry and molecular biology at Penn State University. I'm going to talk today about using Emacs to make all of the materials for presenting course meetings in my courses. Everything that you're going to see today is what I've made using the methods that I'm going to describe. The main point is that you can take an Org document and with a single Emacs document, make both a pretty text document that a student can have on the desk and take notes on. And also, I hope, fairly useful and attractive slides like the ones that I'm presenting right now. Both of these from a single source document. Okay. If you'd like to see the handout that goes along with this, you can download it at the [Sourcehut] repository where I've put— everything's here. So if you'd like to go look at it, you can follow with the handout. So I promised to talk about both authoring and presenting.
[00:01:12.440] Presenting
And first I'm going to talk about presenting. I'm not the only one who does this. You might have seen System Crafters [David Wilson] or Prot's [Protesilaos Stavrou's] channel or Mike Zemansky's channel on Youtube. (Prot actually is going to be presenting tomorrow.) Maybe you've seen this chemical engineer at Carnegie Mellon, John Kitchin or Eric Fraga or Olivier Berger all have made blog posts about using Org mode to produce course materials. This pair Ro and Namkoon actually published a peer reviewed paper. There's prior art here that I'd like to acknowledge.
[00:01:47.820] Hardware
Let me talk about my practices: First, the hardware. This is the hardware that I'm using to record this recording at the very moment, but also I carry these into every course meeting. I've done this for quite a while, this entire semester, and a few previous semesters where everything fits in a backpack. I do every meeting with this tablet— it's a Microsoft Surface that I put a Linux distribution on—and this laptop. I've got a bag full of dongles and connectors and so forth. It all fits in a backpack. This is very mobile. I can set it up and tear it down before and after every class with just a couple minutes. There's the laptop and the tablet with a stylus. Where's my stylus? So that I can draw... ... which is very useful. Obviously, I need a camera. Today, I'm using a desk mic, but when I'm remote, I use a lapel mic. and a video converter, and I'll show you why that's important. And then all of the ancillary equipment. One thing that's nice about using a completely free software stack is that it tends to run on underpowered hardware, and none of the software cost anything. I could have spent much less than this on a used computer and a used tablet. And everything else, these are high estimates. I spent way less than $1,000 for all of this equipment. And it's my equipment, so I have hardware and software control over it, Which is nice. If you have an attitude of upcycling and building, and [if] this is a hobby anyway, this is an easy way— what I'm saying is— the entry into using these things, there's certainly a very low cost barrier. Because the hardware is so weak, I have the tablet for doing tablet stuff, and then I use the laptop to do all of the streaming and recording. I take the video output of the tablet and convert it to USB input into the laptop. Just to give you a diagram here, there's a laptop and there's a tablet. The tablet has a stylus. They both run GNU/Linux distributions. You've got a webcam that goes into the laptop. You've got video output from the tablet that goes into the laptop. There's a microphone that goes into the laptop, and then audio and video come out of the laptop and go into some AV system or another.
[00:04:46.610] Example setup
Okay. This was Wednesday, teaching microbiology. There's the tablet, there's the laptop. There's the external screen in the podium here you can plug into the AV system. There it is. From where I stand, this is what the screen looks like. This is what students are seeing, on the live stream and later on the recording. And students in the room can see this as well. So you notice this is kind of meta, but the camera and the contents of the screen are there when I wander around, and when I stand in front of the screen, the students who aren't in the room can still see what I'm pointing to on the screen. Nobody gets left out.
[00:05:30.520] Presentation software: flexibility in function
Let's talk about the software that I use. There's a lot of different things that I want to be able to show. And so I need a few different software packages— besides Emacs. For drawing on the tablet, I use (I don't know quite how this is pronounced: I think it's) Xournal++ I use the web quite a bit, especially if I want to just spontaneously look something up. Often I use video, especially molecular animations. And that's incredibly powerful. And then now and again, I want to look at text. Especially in the English course that I teach, there's quite a bit of text. I'll use Emacs for that. The video compositor, the thing that puts this video and me in the green screen. and all of this stuff together, is called OBS Studio—and that also does recording. It's ALMOST a completely free software stack. I use Zoom to do the streaming and video conferencing because all of the students are forced to use it for their other classes and I've gone along with it. But a good alternative is Jitsi Meet. There are others. Okay. Again, here's the hardware setup. On the tablet, I'm running Xournal++. On the laptop, I've got Firefox and VLC, and Emacs. OBS is compositing that together. And I use Zoom, but you could use Jitsi.
[00:07:05.950] Live demonstration
All right, let's demonstrate this live. Here we go. Here goes, nothing. The drawing program is really good because I can draw with the stylus on a tablet. It's a remarkable thing— I teach in these big lecture halls, and I guess they want them to be fancy? And so they don't have blackboards and whiteboards! If I want to be able to draw, if I want to do anything approaching analog, it has to be with this software! In this presentation, I don't have very many diagrams, but in my courses, most of the slides are complicated diagrams. Being able to annotate them is really important. This is why I don't use Emacs for presenting these kinds of documents, because I want to be able to mark them up visually. I can show you what that looks like.
[00:07:59.850] OBS
By the way, here's how OBS works: I can go from different "scenes" So I can just do just me, or I can show you the slides, or I can show you what I see on the tablet. On the tablet, I can go through all of the— notice here, I'm scrolling through all of the different slides. I've got all kinds of different markup tools, and tools for controlling zoom and what page I'm on, but you don't have to see that.
[00:08:27.190] Firefox
Okay. Firefox, boy, I do a lot of this. All of the quizzes, quizzes and exams in my courses are online on this web platform called Canvas, which is good enough. It's based on a GPL3 package, but this one is proprietary for Penn State. Notice that there's a quiz every day, and this quiz, every quiz has a recording from that day and you notice there's a picture of me teaching, pointing to the slides. There's the slides themselves. I use OBS to composite in the Zoom chat because I teach this hybrid. There's people in the room and there's people at other campuses who are in this course. Having the Zoom chat in the live feed is very useful. Then the quiz— at the next class meeting, we'll go through this quiz. Here's some experimental data and here's a question where they're supposed to interpret these data. We can in class together, we can review those. That's why Firefox is useful. Being able to inhabit, being able to inhabit figures like this is incredibly powerful. This is the silver lining of being forced to teach online during the pandemic, because I couldn't do this before I had a green screen. But even more powerful than this— For years, I showed students this figure by standing in front of it or by having a projector screen above me. And I said, "This is the B form of DNA." "This is the most common form of DNA." "You see here that there's this minor groove." "And then this feature is called the major groove." And students couldn't see it.
[00:10:26.060] Animation
But if you animate it— if you just have it move, the apparent movement, It's not really movement, it's apparent movement. And it tricks your visual cortex into adding three dimensional structure to this. You can see this feature is the major groove and that feature is the minor groove. And a static image just can't provide that understanding, while moving image can.
[00:10:55.790] Emacs
I use Emacs to look at text. Where's Emacs? Here's Emacs! We read Vonnegut in this English class that I teach and I'm going to tab over to Emacs. It's nice to be able to have text jump around and be dynamic, right? If you, if you want to look at this passage and I'll have somebody read it aloud. And then we talk about why he chose this word and why he chose that word, and the cadence, and the alliteration. Then we can go to another particular excerpt and pick that apart on the screen together. That would be difficult to do with other software that would be very tedious to do on the chalkboard. So Emacs is really good for that sort of thing.
[00:11:42.260] Making slides and handouts with Org Mode
Mostly what I use Emacs for is not to present but to make slides and handouts. Okay. Again, the thing that I want to stress is that the slides and the handouts can be produced from a single Org mode document. This entire presentation was assembled in Emacs. I'll show you how I did that. I think everybody probably knows what Org mode is. But for our purposes, it's a way to write documents in plain text. That's very important because one of the biggest advantages of this is being able to do version control. I don't have Powerpoint decks everywhere with slides that there's no way to keep track of them. Having these be plain text means that I can just put them in a git repository. Very clean and human readable markup including handling tables which is just incredibly powerful. You can manage projects and tasks. But the fact that it's an outline that you can produce a document that's hierarchical and fold and reveal different parts of it. But to produce a book length lectures for an entire semester and use those to produce both slides and handouts, that's very powerful, at least for my brain. To be able to put it all together and have it be discursive rather than having to be graphical. You can export to a million different formats including PDF documents like the handouts as LaTeX, and slides like these through Beamer export.
[00:13:22.680] Pedagogy first
The approach is to think about pedagogy rather than thinking about software or thinking about graphic design. To think about how can I make the best argument? How can I make the best, the most effective sequence of ideas? All I've done is make a few tweaks to the export backends for LaTeX and Beamer to customize them for my particular needs. And I'll show you what I've done. You've seen this already. I'll put one idea in big text on the screen. I find it to be effective to make a single idea explicit at one time. Now, some concepts can be explained with words or text, but many ideas are best just illustrated. In contrast, we've all used Powerpoint, right? And Edward Tufte has taught us about how Powerpoint is so terrible from a cognitive point of view and from a communications point of view. So using Org mode is much better. How is it better? Well, Tufte also tells us that any oral presentation that is substantive at all has to have some physical handout that the audience can use to take notes on. Slides are terrible handouts. And notes are usually terrible slides. Having one document where you can produce both and have them be, have the same organization, but different structures and different visual organization is something that I wanted for a long time and I can only do it with Emacs. Being able also for my brain to separate the work of writing and developing ideas and developing explanations and developing arguments and scaffolding them. That's jargon in pedagogy for bringing the student along. Separate that work from wrangling slides. That's super helpful for me. Again, you have an Org document that makes both the handouts and the slides. What's beautiful about it is that everything is an outline. And again, it's very discursive. Here's Tufte's famous poster where he's making fun of the psychology of Powerpoint. I don't know about you, but I have the kind of brain and I'm in the kind of job and I'm at the age where I don't have extra cognitive function! You know? So streamlining this workflow has been really helpful.
[00:16:17.790] org-teach
All right, so let me show
you what I've developed.
Let's look at the Org doc.
Okay. So what you see is you have
a typical Org mode buffer.
There's two headings here.
One of them is stuff that I've deleted and
the other is the talk.
And so all of these subheadings have
various things underneath including
these macros that I wrote like include-slide
,
impact-slide
, subsection-slide
,
et cetera, and then a bunch of stuff.
Then I've got this include
file that just has
the macros that I've written.
You can look at this on the repo.
I'm not going to take
the time to walk through it and
explain what all the LaTeX means.
But the upshot is
that by including that file
that has all the macro definitions,
you get things like this macro pause
or newline or whitespace-break,
which just allow—
pause splits a slide into two frames,
so you can get these overlays,
so you can go through paragraphs one by one.
These just put
white space in.
Text-slides: This thing here, this title
is level three heading.
Figure-slides:
the same thing are level three headings.
One of the most powerful things
is that I can take other files,
I can take other Org files that have level
three headings that are slides and those can
be in some other repository.
I only need to have one version of
that slide that I
can use in multiple courses.
Just that functionality is
incredibly helpful for keeping
track of work from a few years ago.
All of these I'm going to
explain in the next few slides.
The section slides
correspond to course modules.
Each of these is going to
be a few weeks of a course.
This is a major division of a course.
I have some macros so that I can decorate
this with relevant information.
Then for every subsection,
level two headline, that
corresponds to a major
course topic in the module.
Then text slides, again,
level three headlines become
titles for the slide,
and level four headlines become text elements.
Most of my slides look like this.
They're figures.
Here's the glycolytic pathway.
Level three gives you the title.
It's missing here actually,
but there's a way you can put in captions.
This line here just tells
the LaTeX export backend
how big you want it and stuff like that.
Impact slides, they have to go under H1 or H2.
And they just give you one of these text slides.
For an entire slide being an image,
you can use this image-slide macro.
[00:19:38.330] Blank slides
I often put in blank slides to remind myself that this is a time to stop. Often there's something for me to draw here with the stylus.
[00:19:50.050] Animations
I often use— it used to be Powerpoint, now I use LibreOffice Impress—to make multi slide animations like the sphere and the donut and the GI tract. And this hardware thing that I did for you today, I export those animations as PDFs. Then I can just slurp them up into the slides. Just into the slides, not into the handouts with this macro.
[00:20:19.270] Conclusion
I hope that you find this useful. I hope you share it with other educators that you know. Here is the sourcehut repo, here's how to get in touch with me. I look forward to addressing your questions. I want to say thank you to Sacha [Chua] and the organizers, and to everyone who made this possible and to all of you in the community. Because as we all know, that that's what makes Emacs such a strong and powerful package is all of the people behind it. Thanks everybody.
Q&A transcript (unedited)
me? Great. The little angels in the background have done it for me. So now finally that everything is ready. Hi James, how are you doing? Good morning. Hello. Well, thank you for your talk and sorry for the little hiccup at the middle we had to pull out a fire with the audio going out in the middle and sorry about this. very fancy setup with the green screen and I'm sad to see that you haven't put out the green screen for your BBB session right now. Do you have it in the background just for you? Right, okay, it wasn't that far. Great. So I'm just going to ask, so this is the first live Q&A that we have for the session so things might be coming into place so pardon us if we take a little bit of time to put the questions on the screen and all of this. What I'm going to do, I'm just going to load up the pad. I would invite James to also open the pad on his hand. So yeah, I've got people talking in my ears and it's been a while since I've last had this. And okay, so opening the talks right now, opening the pad if I can find it. Open up the pad. Okay. So have you got a pad open on your end, James? So I can read the question. So, okay, great. Opening it on my end as well. What I'm going to do, folks, I see some of you have joined us. I'm going to start doing is first taking questions in the other part because it's a little faster to ask questions like this. And then as soon as we've finished, feel free to unmute yourself and ask your questions. All right so I've got some reactions about OBS being cool and yes both James and I will be able to tell you that it's very cool we do very fancy stuff like when I need to talk to production in the background and all the stuff obviously that James has been able to show you with a green screen. So I don't see a whole lot of questions so far. I see a lot of reactions on publishing lectures book and of a classic example is John Kitchens obviously. Pedagogy first developments. Macros are a cool idea. Okay questions. So how do you overlap yourself with a presentation. It's so cool. It's quite simple. You can have a separate filter for each video feed and 1 of the filters that's available is chroma key. You just choose a color to make transparent and just make sure that the webcam is at the top of the composition. And the thing that surprised me the most was how quickly my brain was able to mirror everything and control my body from a separate point of view like the way weather broadcasts are done. It took seconds to be able to do that. Well, and now I have years of practice because that set up that you saw that I used to record this video. I used for years during the pandemic for 4 or 5 semesters to because my courses are all have 2, 3, 400 students, except for the English class, which has, you know, 30 students. And so during the pandemic, and even after lockdowns were no longer mandated, I taught online just because I didn't want to have so many students in the room at the same time. So I've yeah, I'm it. I have a lot of practice doing that. you know, it feels like it's the same thing with weathercasters, you know, it sounds very it looks very easy to do, but it also takes quite a bit of practice. 1 of the things that you also need to remember if you're using a chroma key that James has explained is that you need to have very good lighting, basically for the color to pop out in the background and for your body to be easily highlightable. Okay, were you finished with this question? I found it so hard to do that. PPT on the other end is easier to achieve. produced from Org Mode as PDFs. Well, and in fact, I even before when I was using other software to produce slides, I produced them as PDFs, precisely because I wanted to be able to mark them up on on the screen with the stylus. And so I don't do video in the slides. I use OBS to switch from static slides that I mark up with the stylus over to some kind of video viewer and then back. And again, that's how I can use Firefox. I use OBS to switch between Firefox and video and the Shornell plus plus program where I can mark up slides. So those functionalities are that's why I use different software and pull it all together with OBS so that I can have lots of functional flexibility. org-present and stay for the PowerPoint slides? I'm not sure exactly how to read this particular question but at least we can focus on org-present. Are you familiar with what it is? again I guess you could use org-present to show images and to show headings as slides. But again, because I'm it's such a crucial functionality to be able to mark them up with stylus. I didn't really show this very much, but I also highlight things the way I would highlight using a laser pointer on the screen. And again, I don't see Emacs being able to do that for another couple of generations. So really the only thing I use Emacs for during presentations is to narrow headings that we can focus on particular text excerpts. EmacsConf are usually, especially the Org Mode ones are done with OrgPresent. And. Sorry, I had again someone talk to me in a year. You know, the problem with EmacsConf is that every year, you know, you have to relearn a lot of skills. And by the time we finished by Sunday evening we are masters of it and then we forget everything by the time the next year comes around. What I was going to say is that org-present is often used by people inside Emacs conf presenting about org-mode but yeah whenever you need to do something a little more visual, it gets a little more complicated. Some people have tried to do fancy stuff with SVG, which is probably the path forward for this type of stuff. But yeah, if you need to draw, if you need to highlight, it is pretty complicated. Perhaps something that you might want to be interested, James, in checking out is PDF tools, which is a way to open up a PDF in Emacs. And this allows you to have basic PDF annotations, like putting a little bit of a Nikon on it. Perhaps you've already played with it. package but until it allows me to make a mark on the screen that shows up in a video compositor. It's not going to replace Shortenel. Moving on to the next question. Is the triple-accolade syntax an Org Mode core feature that I missed so far or did you program that and thank you for the great talk. it's just part of all of the export backends. Actually, I think the way it works is it precedes all of the export backends. When you export, the first thing that happens is expansion of macros. And that's a built-in org mode feature. It's definitely beyond my Emacs Lisp powers to be able to have made something that powerful. That's right. I have come a long way. you know, most of the people who show up to Max Conf. Especially talking about stuff that has to do with presentations or what they do in academia. You know, they always say, oh, but, you know, I couldn't have done all this, you know, it's just far away. And then they come back 1 year or 2 years later and then, oh, I've made my entire library for presentation and stuff like this. So Be hopeful about what the future holds for you in terms of coming up with crazy new features for the entire ecosystem. since the pandemic, I have written, I wrote my first major mode. It's trivial, but it provides functionality that is very useful to me and it's it's going to sound like I'm just trying to butter everyone up but seeing a lot of the names in the IRC channel people who have taught me so much on their YouTube channels and in their blog posts and on Reddit and on Mastodon. Without many of the people who are here today watching my talk, it's very fun to have people who have helped me learn so much about Emacs. So thanks to all of you. of this crew of people inspiring others to do very much the same. So thank you for joining questions and then we'll open up the mic to other people on Big Blue Button. What kind of comparative feedback are students giving you regarding your approach? the pandemic especially when most of the courses were just being taught over zoom by people sharing their screen. interruption. Very rude interruption. We've got the intro for the next talk playing and I'm not sure what's going on. Give me just a second. Sasha. Yeah, I think it's started. Okay so yeah I think it's not a because of the little delay we had getting the audio fixed up. The good news is that we're still recording the talk right now and we still have James around. Obviously James you're no longer on being broadcast on General but if you want to keep answering questions or if you want to anyone in the room right now wants to ask you questions feel free to do so. I'm going to need to hop off because I need to get other things ready for the next talks obviously because I was not expecting this to happen and that led to a very abrupt end to this discussion but people afterwards on emacsmo.org slash 2023 slash talks will be able to find all the content here. So I'll have to leave now. Thank you so much James for doing the difficult task of opening up EmacsConf and I'll probably see you later. Yes. You are using the tablet as a monitor, right? Touch screen monitor with that? know I can. It has a touch screen and so. So basically the functionality that that program provides is to be able to just mark up PDFs with a stylus, you know, in the way that you would use any other tablet. And to be able to take that video signal and put it into another machine. That was the that was the key. That's the killer app. of like changing my laptop into a tablet to read manga, browse the web and kind of curious if it works well like as a wireless monitor with a tablet or how well it like you can use Emacs with it in a tablet mode or were you just is it it's just a Microsoft Surface and so it comes with a keyboard so you can take the keyboard off. Yeah, but I use it. I use it with the keyboard as well. And I just. I bumped the mute button on the mic. Yeah. So again, this is, used and it runs Emacs. I mean it runs. You know Linux really well. And the trouble is that the hard drive you know the SSE drive is small and the RAM is small, but it works for the purposes. Basically, if I had a couple thousand dollars, I could probably buy a touchscreen machine where I could run everything on it and do the streaming and do the video capture and do the PDF markup. But since both of these are so, the hardware that I use is so old and cheap and weak I have to split it across 2 machines. having specific purposes for specific things where it's just not. Yeah it's like I don't want a smart TV that plays Netflix I want a smart TV that has all the smarts that I turn my smart TV into a TV monitor I don't want to yeah feel that ethic. Oh, on do highlighting in an org mode document. You can use org web tools. I wrote this in the notes, but you can use org web tools to download a web page and then you can use org remark to start highlighting in the org mode web page and then because an org mode document now you can just edit it directly. If you want other people to join in on an Emacs session you could use a package like what's it called? CRDT.EL that will allow 2 people with 2 different Emacs configurations to edit the same buffer. And you have a host that can host a buffer too. It works with, and they have 1 optional extension for org mode that will synchronize the folding of the org drawers. Like you have each highlight line mode these are just some ideas like you can have like highlight line mode so people can easily see which line you're on cursor tracking and then you can have other people join in students or Is there anyone else in the in the big blue button room who has a question? All right, I'm going to go over to the pad and see if there are any pending questions I can address. Thanks, Plasma Strike. could be Markdown, could be OpenOffice, could be a notebook format. This methodology was conceived by Donald Knuth in 1984. The main purpose of literal programming is not only to make code or documentation or output more manageable, but to allow humans to create a data story to be used from a single source. What you see on the slide on the left-hand side is the story and code inside an org-mod file. The file starts with some documentation, then you write back down this code, and at the bottom you see the output file, which is not shown in the slide itself. In the middle you have the source code, which is the result of tangling or opening a buffer inside offload. On the very right hand side we have a PDF, actually this HTML, very same file that you see in memory language. So the humans look at some of this code and the machines look at other parts of the code. I actually did all my programming in the literary world even in the early 1990s, not using Org Mode, which didn't exist yet, but using Norman Ramsey's Norep preprocessor. They still use it inside the Org-Mode today. This preprocessor, Norep, allows you to tangle code from within an Org-Mode file that is self-standing file, much like Org-mode's edit functions, which export code blocks into buffers in whatever language the code blocks. In data science, these interactive notebooks, in 1 of the interpreted languages like Julia, Python, or R dominating? The basic technology is that of Jupyter notebooks, which take their name from Julia, Python, and R. And these notebooks use a spruce-dark shell, for example, IPython, and an option to add SQL cells. All good inside Emacs has a large number of advantages. Some of them are listed here over these notebooks. 2 of these stand out particularly. Different languages can be mixed as shown in the image. While in Jupyter notebooks, a notebook is limited to running a kernel in 1 language only. The content of the notebook, its document code or output part can be exported in a variety of forms.
Questions or comments? Please e-mail emacsconf-org-private@gnu.org