WEBVTT 00:00:01.680 --> 00:00:01.880 [Speaker 0]: And he can hear us. Can you perhaps do it for 00:00:03.679 --> 00:00:03.760 me? Great. The little angels in the 00:00:04.640 --> 00:00:05.140 background have done it for me. 00:00:07.299 --> 00:00:07.759 So now, finally, that everything is ready. 00:00:08.559 --> 00:00:09.059 Hi, James. How are you doing? 00:00:10.559 --> 00:00:11.059 [Speaker 1]: Good morning. Hello. 00:00:15.200 --> 00:00:15.600 [Speaker 0]: Well, thank you for your talk. 00:00:17.160 --> 00:00:17.440 And sorry for the little hiccup at the middle 00:00:20.080 --> 00:00:20.380 we had to put out a fire with the audio 00:00:22.060 --> 00:00:22.560 going out in the middle and sorry about this. 00:00:23.560 --> 00:00:24.060 [Speaker 1]: It's no trouble. 00:00:28.220 --> 00:00:28.680 [Speaker 0]: So James, you've obviously told us about your 00:00:30.060 --> 00:00:30.220 very fancy setup with the green screen and 00:00:32.640 --> 00:00:32.800 I'm sad to see that you haven't put out the 00:00:35.440 --> 00:00:35.589 green screen for your BBB session right now. 00:00:36.880 --> 00:00:37.040 Do you have it in the background just for 00:00:39.880 --> 00:00:40.380 you? Right, okay. It wasn't that far. 00:00:43.860 --> 00:00:44.180 Great. No. So, I'm just going to ask. 00:00:47.260 --> 00:00:47.440 So, this is the first live Q&A that we have 00:00:49.080 --> 00:00:49.320 for this session, so things might be coming 00:00:51.480 --> 00:00:51.600 into place, so pardon us if we take a little 00:00:54.239 --> 00:00:54.340 bit of time to put the questions on the 00:00:55.320 --> 00:00:55.820 screen and all of this. 00:00:58.080 --> 00:00:58.260 What I'm gonna do, I'm just gonna load up the 00:01:02.720 --> 00:01:02.800 pad. I would invite James to also open the 00:01:03.820 --> 00:01:04.200 pad on his hand. Sorry, 00:01:05.580 --> 00:01:05.740 I've got people talking in my ears and it's 00:01:07.240 --> 00:01:07.740 been a while since I've last had this. 00:01:11.400 --> 00:01:11.869 Okay, so opening the talks right now. 00:01:13.780 --> 00:01:14.280 Opening the pad, if I can find it. 00:01:20.440 --> 00:01:20.740 Open the pad. Okay. Have you got the pad open 00:01:22.360 --> 00:01:22.860 [Speaker 1]: So I can read the question. 00:01:24.020 --> 00:01:24.280 [Speaker 0]: on your end, James? Okay, 00:01:26.720 --> 00:01:27.220 great. Opening it on my end as well. 00:01:28.380 --> 00:01:28.660 What I'm going to do, folks, 00:01:30.300 --> 00:01:30.800 I see some of you have joined us on, 00:01:32.560 --> 00:01:32.700 if I show you, some of the people that have 00:01:33.840 --> 00:01:34.340 joined us in the BBB room. 00:01:35.240 --> 00:01:35.540 You can join us as well, 00:01:37.860 --> 00:01:38.260 all the links are on the talk page or on ISE, 00:01:39.140 --> 00:01:39.520 you can find it very easily. 00:01:41.960 --> 00:01:42.240 But what I'm going to start doing is first 00:01:43.660 --> 00:01:43.860 taking questions in the other pad because 00:01:45.540 --> 00:01:45.700 it's a little faster to ask questions like 00:01:47.760 --> 00:01:48.080 this, and then as soon as we've finished, 00:01:49.760 --> 00:01:49.900 feel free to unmute yourself and ask your 00:01:54.020 --> 00:01:54.160 questions. All right, so I've got some 00:01:56.640 --> 00:01:57.140 reactions about OBS being cool and yes, 00:01:59.060 --> 00:01:59.180 both James and I will be able to tell you 00:02:00.600 --> 00:02:01.100 that it's very cool. We do very fancy stuff 00:02:05.540 --> 00:02:05.640 like when I need to talk to production in the 00:02:07.420 --> 00:02:07.540 background and all the stuff obviously that 00:02:09.020 --> 00:02:09.160 James has been able to show you with a green 00:02:12.600 --> 00:02:12.800 screen. So I don't see a whole lot of 00:02:15.780 --> 00:02:16.020 questions so far. I see a lot of reactions on 00:02:17.420 --> 00:02:17.780 publishing lectures book and a classic 00:02:19.280 --> 00:02:19.780 example is John Kitchens obviously. 00:02:24.020 --> 00:02:24.240 Pedagogy first developments macros are a cool 00:02:28.340 --> 00:02:28.820 idea. Okay questions so how do you overlap 00:02:30.860 --> 00:02:31.360 yourself with a presentation it's so cool. 00:02:39.540 --> 00:02:40.040 [Speaker 1]: It's quite simple OBS provides filters for 00:02:42.080 --> 00:02:42.480 you can have a separate filter for each video 00:02:44.260 --> 00:02:44.760 feed. And 1 of the filters that's available 00:02:47.200 --> 00:02:47.520 is chroma key. You just choose a color to 00:02:51.560 --> 00:02:52.040 make transparent and just make sure that the 00:02:55.640 --> 00:02:56.140 webcam is at the top of the composition. 00:03:00.660 --> 00:03:00.900 And the thing that surprised me the most was 00:03:04.920 --> 00:03:05.380 how quickly my brain was able to mirror 00:03:07.200 --> 00:03:07.360 everything and control my body from a 00:03:10.360 --> 00:03:10.740 separate point of view like the way weather 00:03:15.200 --> 00:03:15.360 broadcasts are done. It took seconds to be 00:03:16.720 --> 00:03:16.920 able to do that. Well, 00:03:19.700 --> 00:03:20.200 and now I have years of practice because that 00:03:22.720 --> 00:03:22.960 setup that you saw that I used to record this 00:03:26.960 --> 00:03:27.460 video, I used for years during the pandemic 00:03:30.040 --> 00:03:30.540 for 4 or 5 semesters to, 00:03:33.520 --> 00:03:33.820 because my courses are all have 2, 00:03:36.480 --> 00:03:36.900 3, 400 students, except for the English class 00:03:40.160 --> 00:03:40.460 which has you know 30 students and so during 00:03:43.520 --> 00:03:43.700 the pandemic and even after lockdowns were no 00:03:45.780 --> 00:03:46.020 longer mandated I taught online just because 00:03:48.180 --> 00:03:48.320 I didn't want to have so many students in the 00:03:49.000 --> 00:03:49.500 room at the same time. 00:03:53.640 --> 00:03:54.120 So I've yeah I'm it I have a lot of practice 00:03:54.360 --> 00:03:54.860 doing that. 00:03:57.780 --> 00:03:58.200 [Speaker 0]: But it pays off because it looks so natural 00:03:59.960 --> 00:04:00.140 you know it feels like it's the same thing 00:04:02.200 --> 00:04:02.660 with weather casters you know it sounds very 00:04:04.440 --> 00:04:04.700 it looks very easy to do but it also takes 00:04:05.280 --> 00:04:05.780 quite a bit of practice. 00:04:08.220 --> 00:04:08.400 1 of the things that you also need to 00:04:09.840 --> 00:04:10.160 remember if you're using a chroma key that 00:04:11.680 --> 00:04:11.880 James has explained is that you need to have 00:04:14.380 --> 00:04:14.680 very good lighting basically for the color to 00:04:16.320 --> 00:04:16.640 pop out in the background and for your body 00:04:17.779 --> 00:04:18.279 to be easily highlightable. 00:04:20.760 --> 00:04:21.260 Okay, were you finished with this question? 00:04:24.440 --> 00:04:24.940 [Speaker 1]: Yeah, let's take another 1. 00:04:28.020 --> 00:04:28.520 [Speaker 0]: Sure. So how do you deal with video in Beam? 00:04:30.060 --> 00:04:30.560 I found it so hard to do that. 00:04:32.600 --> 00:04:33.100 PPT on the other end is easier to achieve. 00:04:41.120 --> 00:04:41.520 [Speaker 1]: Yeah, so remember that the slides get 00:04:46.420 --> 00:04:46.920 produced from Org Mode as PDFs. 00:04:49.820 --> 00:04:50.040 Well, and in fact, even before when I was 00:04:52.580 --> 00:04:52.740 using other software to produce slides I 00:04:55.600 --> 00:04:55.760 produced them as PDFs precisely because I 00:04:58.440 --> 00:04:58.580 wanted to be able to mark them up on on the 00:05:03.960 --> 00:05:04.160 screen with the stylus And so I don't do 00:05:07.580 --> 00:05:07.840 video in the slides. I use OBS to switch from 00:05:09.900 --> 00:05:10.400 static slides that I mark up with the stylus 00:05:14.540 --> 00:05:14.800 over to some kind of video viewer and then 00:05:17.320 --> 00:05:17.820 back. And again that's how I can use Firefox. 00:05:21.360 --> 00:05:21.860 I use OBS to switch between Firefox and video 00:05:26.820 --> 00:05:27.040 and the Shornal++ program where I can mark up 00:05:31.280 --> 00:05:31.780 slides. So those functionalities are... 00:05:35.140 --> 00:05:35.320 That's why I use different software and pull 00:05:37.480 --> 00:05:37.980 it all together with OBS so that I can have 00:05:41.240 --> 00:05:41.740 lots of functional flexibility. 00:05:47.360 --> 00:05:47.660 [Speaker 0]: Great. Do you ever use things like 00:05:50.320 --> 00:05:50.820 org-present and stay for the PowerPoint 00:05:53.040 --> 00:05:53.200 slides? I'm not sure exactly how to read this 00:05:54.340 --> 00:05:54.520 particular question, but at least we can 00:05:56.120 --> 00:05:56.520 focus on org-present. Are you familiar with 00:05:56.820 --> 00:05:57.320 what it is? 00:06:00.060 --> 00:06:00.560 [Speaker 1]: I've played around with org-present, 00:06:06.740 --> 00:06:07.240 And again, I guess you could use OrgPresent 00:06:11.440 --> 00:06:11.680 to show images and to show headings as 00:06:16.820 --> 00:06:17.220 slides. But again, Because it's such a 00:06:20.440 --> 00:06:20.640 crucial functionality to be able to mark them 00:06:25.180 --> 00:06:25.360 up with a stylus. I didn't really show this 00:06:27.040 --> 00:06:27.180 very much, but I also highlight things the 00:06:29.320 --> 00:06:29.600 way I would highlight using a laser pointer 00:06:31.960 --> 00:06:32.460 on the screen. And again, 00:06:37.160 --> 00:06:37.380 I don't see Emacs being able to do that for 00:06:38.560 --> 00:06:39.060 another couple of generations. 00:06:43.220 --> 00:06:43.540 So really the only thing I use Emacs for 00:06:48.900 --> 00:06:49.400 during presentations is to narrow headings 00:06:51.600 --> 00:06:52.100 that we can focus on particular text 00:06:52.600 --> 00:06:53.100 excerpts. 00:06:59.020 --> 00:06:59.180 [Speaker 0]: Right, yeah. A lot of our presentations at 00:07:00.060 --> 00:07:00.380 EmacsConf are usually, 00:07:01.320 --> 00:07:01.720 especially the Org Mode ones, 00:07:02.520 --> 00:07:03.020 are done with Org Present. 00:07:08.480 --> 00:07:08.980 Sorry, I had someone talk to me in the ear. 00:07:10.960 --> 00:07:11.460 You know the problem with EmacsConf is that 00:07:13.620 --> 00:07:13.780 every year, you have to relearn a lot of 00:07:15.840 --> 00:07:16.340 skills, and by the time we finish, 00:07:18.720 --> 00:07:19.220 by Sunday evening, we are masters of it. 00:07:21.460 --> 00:07:21.600 And then we forget everything by the time the 00:07:22.260 --> 00:07:22.760 next year comes around. 00:07:24.440 --> 00:07:24.940 What I was going to say is that org-present 00:07:28.660 --> 00:07:29.160 is often used by people inside Emacs, 00:07:30.440 --> 00:07:30.940 Conf, presenting about org-mode. 00:07:32.660 --> 00:07:32.780 But yeah, whenever you need to do something a 00:07:34.200 --> 00:07:34.360 little more visual, it gets a little more 00:07:36.360 --> 00:07:36.500 complicated. Some people have tried to do 00:07:39.020 --> 00:07:39.160 fancy stuff with SVG, which is probably the 00:07:40.640 --> 00:07:41.140 path forward for this type of stuff. 00:07:42.680 --> 00:07:43.180 But yeah, if you need to draw, 00:07:43.940 --> 00:07:44.440 if you need to highlight, 00:07:45.820 --> 00:07:46.320 it is pretty complicated. 00:07:48.220 --> 00:07:48.340 Perhaps something that you might want to be 00:07:50.500 --> 00:07:50.980 interested, James, in checking out is PDF 00:07:53.740 --> 00:07:54.240 Tools, which is a way to open up a PDF in 00:07:59.100 --> 00:07:59.480 Emacs. And this allows you to have basic PDF 00:08:01.320 --> 00:08:01.560 annotations, like putting a little bit of a 00:08:03.960 --> 00:08:04.200 Nikon on it. Perhaps you've already played 00:08:04.360 --> 00:08:04.860 with it. 00:08:09.440 --> 00:08:09.940 [Speaker 1]: I have used that. PDF Tools is an incredible 00:08:14.260 --> 00:08:14.540 package but until it allows me to make a mark 00:08:17.860 --> 00:08:18.260 on the screen that shows up in a video 00:08:20.540 --> 00:08:21.040 compositor. It's not going to replace 00:08:21.360 --> 00:08:21.860 Shornal. 00:08:25.200 --> 00:08:25.440 [Speaker 0]: Definitely. Alright, moving on to the next 00:08:31.580 --> 00:08:31.592 question. Is the triple-accolade syntax an 00:08:31.682 --> 00:08:31.695 [Speaker 2]: Org Mode core feature that I missed so 00:08:31.760 --> 00:08:32.220 [Speaker 0]: far, or did you program that? 00:08:33.080 --> 00:08:33.580 And thank you for the great talk. 00:08:38.100 --> 00:08:38.360 [Speaker 1]: Thank you very much. No, 00:08:42.700 --> 00:08:43.200 it's just part of all of the export backends. 00:08:44.860 --> 00:08:45.060 Actually, I think the way it works is it 00:08:46.560 --> 00:08:47.040 precedes all of the export backends. 00:08:49.820 --> 00:08:50.280 When you export, the first thing that happens 00:08:51.880 --> 00:08:52.380 is expansion of macros. 00:08:55.680 --> 00:08:56.180 And that's a built-in org mode feature. 00:08:59.280 --> 00:08:59.760 It's definitely beyond my Emacs Lisp powers 00:09:01.160 --> 00:09:01.360 to be able to have made something that 00:09:06.440 --> 00:09:06.940 powerful. That's right. 00:09:08.040 --> 00:09:08.540 I have come a long way. 00:09:10.460 --> 00:09:10.760 [Speaker 0]: For now, for now. You know, 00:09:12.800 --> 00:09:12.980 we always, you know, most of the people who 00:09:14.680 --> 00:09:15.060 show up to Emacs, especially talking about 00:09:17.080 --> 00:09:17.300 stuff that has to do with presentations or 00:09:18.420 --> 00:09:18.900 what they do in academia, 00:09:19.600 --> 00:09:19.780 you know, they always say, 00:09:22.240 --> 00:09:22.440 oh, but, you know, I couldn't have done all 00:09:23.940 --> 00:09:24.280 this, you know, it's just far away. 00:09:26.120 --> 00:09:26.280 And then they come back 1 year or 2 years 00:09:27.660 --> 00:09:27.980 later, and then, oh, I've made my entire 00:09:29.540 --> 00:09:29.700 library for presentation and stuff like this. 00:09:32.800 --> 00:09:32.980 So Be hopeful about what the future holds for 00:09:34.760 --> 00:09:34.920 you in terms of coming up with crazy new 00:09:36.300 --> 00:09:36.800 features for the entire ecosystem. 00:09:38.560 --> 00:09:39.060 [Speaker 1]: Well, let me tell you, 00:09:42.040 --> 00:09:42.540 since the pandemic, I have written, 00:09:44.340 --> 00:09:44.700 I wrote my first major mode. 00:09:46.520 --> 00:09:47.020 It's trivial, but it provides functionality 00:09:49.580 --> 00:09:50.080 that is very useful to me. 00:09:53.720 --> 00:09:53.940 And it's going to sound like I'm just trying 00:09:54.760 --> 00:09:54.960 to butter everyone up, 00:09:57.620 --> 00:09:58.120 but seeing a lot of the names in the IRC 00:10:01.360 --> 00:10:01.860 channel, people who have taught me so much on 00:10:05.220 --> 00:10:05.640 their YouTube channels and in their blog 00:10:07.400 --> 00:10:07.900 posts and on Reddit and on Mastodon. 00:10:11.720 --> 00:10:12.220 Without many of the people who are here today 00:10:14.820 --> 00:10:15.320 watching my talk, it's very fun to have 00:10:17.920 --> 00:10:18.120 people who have helped me learn so much about 00:10:19.640 --> 00:10:20.140 Emacs. So thanks to all of you. 00:10:23.820 --> 00:10:24.140 [Speaker 0]: Well, and yeah, and now you're becoming part 00:10:26.940 --> 00:10:27.380 of this crew of people inspiring others to do 00:10:28.860 --> 00:10:29.180 very much the same. So thank you for joining 00:10:32.020 --> 00:10:32.520 [Speaker 1]: Thank you very much. 00:10:34.780 --> 00:10:35.020 [Speaker 0]: the crew. Great. Moving on to the 2 last 00:10:36.500 --> 00:10:36.660 questions and then we'll open up the mic to 00:10:37.400 --> 00:10:37.900 other people on BigBlueButton. 00:10:40.760 --> 00:10:40.920 What kind of comparative feedback are 00:10:42.280 --> 00:10:42.780 students giving you regarding your approach? 00:10:47.560 --> 00:10:48.060 [Speaker 1]: Oh my gosh. Students were ready to, 00:10:49.120 --> 00:10:49.620 during the pandemic especially, 00:10:54.100 --> 00:10:54.600 when most of the courses were just being 00:10:56.660 --> 00:10:56.820 taught over Zoom by people sharing their 00:10:56.820 --> 00:10:57.320 screens. 00:10:58.520 --> 00:10:58.660 [Speaker 0]: Just a second, sorry, sorry for the 00:10:59.440 --> 00:10:59.800 interruption, very rude interruption, 00:11:00.840 --> 00:11:01.040 but I've got the intro for the next talk 00:11:02.200 --> 00:11:02.440 playing and I'm not sure what's going on. 00:11:03.120 --> 00:11:03.620 Give me just a second. 00:11:04.440 --> 00:11:04.940 Sasha? 00:11:19.840 --> 00:11:20.340 So... Yeah, I think it's started. 00:11:37.020 --> 00:11:37.300 Sure. I got the times wrong, 00:11:38.900 --> 00:11:39.100 apparently, because of the little delay we 00:11:41.880 --> 00:11:42.380 had getting the audio fixed up. 00:11:44.220 --> 00:11:44.720 The good news is that we're still recording 00:11:46.400 --> 00:11:46.680 the talk right now and we still have James 00:11:47.560 --> 00:11:47.800 around. Obviously, James, 00:11:50.280 --> 00:11:50.440 you're no longer on being broadcast on 00:11:53.040 --> 00:11:53.440 General, but if you want to keep answering 00:11:55.200 --> 00:11:55.520 questions or if you want to, 00:11:57.240 --> 00:11:57.360 anyone in the room right now wants to ask you 00:11:58.440 --> 00:11:58.940 questions, feel free to do so. 00:12:00.920 --> 00:12:01.080 I'm going to need to hop off because I need 00:12:02.560 --> 00:12:03.060 to get other things ready for the next talks, 00:12:04.820 --> 00:12:05.320 [Speaker 1]: But James, 00:12:08.860 --> 00:12:09.120 [Speaker 0]: sadly. great. And sorry, 00:12:10.040 --> 00:12:10.380 I'm a little tense, obviously, 00:12:12.680 --> 00:12:13.180 because I was not expecting this to happen. 00:12:15.960 --> 00:12:16.160 And that led to a very abrupt end to this 00:12:18.340 --> 00:12:18.480 discussion. But people afterwards on 00:12:21.860 --> 00:12:21.980 emacsmo.org slash 2023 slash talks will be 00:12:23.600 --> 00:12:24.020 able to find all the content here. 00:12:24.920 --> 00:12:25.420 So I'll have to leave now. 00:12:26.660 --> 00:12:26.980 Thank you so much, James, 00:12:29.020 --> 00:12:29.180 for doing the difficult task of opening up 00:12:31.480 --> 00:12:31.980 emacs-conf, And I'll probably see you later. 00:12:34.660 --> 00:12:35.160 [Speaker 1]: Thank you, Leo. Bye-bye. 00:12:54.380 --> 00:12:54.880 [Speaker 3]: On your, the external, 00:12:59.920 --> 00:13:00.340 the journal You were, you, 00:13:03.040 --> 00:13:03.520 you were using the tablet as a monitor, 00:13:04.540 --> 00:13:05.040 right? Touchscreen monitor, 00:13:05.380 --> 00:13:05.880 what's that? 00:13:07.160 --> 00:13:07.480 [Speaker 1]: program. Yes. That's exactly right. 00:13:10.040 --> 00:13:10.540 So it's a tablet, so it has a touchscreen. 00:13:15.360 --> 00:13:15.580 And so basically the functionality that that 00:13:20.220 --> 00:13:20.560 program provides is to be able to just mark 00:13:21.660 --> 00:13:22.160 up PDFs with a stylus, 00:13:25.080 --> 00:13:25.280 you know, in the way that you would use any 00:13:30.440 --> 00:13:30.640 other tablet. And to be able to take that 00:13:32.920 --> 00:13:33.420 video signal and put it into another machine. 00:13:35.640 --> 00:13:36.100 That was the that was the key. 00:13:36.900 --> 00:13:37.400 That's the killer app. 00:13:41.460 --> 00:13:41.940 [Speaker 3]: I've thought about grabbing 1 for the purpose 00:13:45.120 --> 00:13:45.420 of like changing my laptop into a tablet to 00:13:47.640 --> 00:13:48.140 read manga, browse the web, 00:13:50.860 --> 00:13:51.020 and I'm kind of curious if it works well like 00:13:53.100 --> 00:13:53.600 as a wireless monitor with a tablet? 00:13:59.820 --> 00:14:00.060 Or how well it like you can use Emacs with it 00:14:04.020 --> 00:14:04.200 in a tablet mode? Or were you just or you 00:14:04.400 --> 00:14:04.900 just use 00:14:11.680 --> 00:14:12.040 [Speaker 1]: the tablet that I use is this is it it's just 00:14:14.820 --> 00:14:15.020 the Microsoft Surface and so it comes with a 00:14:18.200 --> 00:14:18.700 keyboard So you can take the keyboard off. 00:14:22.760 --> 00:14:23.260 But I use it with the keyboard as well. 00:14:25.240 --> 00:14:25.740 And I just. 00:14:31.000 --> 00:14:31.500 [Speaker 3]: You're cutting off right now. 00:14:33.680 --> 00:14:34.180 Audio. 00:14:45.660 --> 00:14:46.160 Your audio is cutting off right now. 00:15:31.740 --> 00:15:32.240 How about now? Now I can hear you. 00:15:33.820 --> 00:15:33.960 [Speaker 1]: How about now? I bumped the mute button on 00:15:37.420 --> 00:15:37.740 the mic. Yeah, so again, 00:15:38.680 --> 00:15:38.940 this is... I'm trying to figure out which 00:15:41.020 --> 00:15:41.520 [Speaker 3]: of the 16 mute buttons you used. 00:15:45.700 --> 00:15:46.200 [Speaker 1]: It's just the Surface Pro 3 that I got used. 00:15:52.920 --> 00:15:53.300 And it runs Emacs, I mean it runs GNU Linux 00:15:58.740 --> 00:15:58.980 really well. And the trouble is that the hard 00:16:01.900 --> 00:16:02.220 drive, you know, the SSD drive is small and 00:16:06.260 --> 00:16:06.420 the RAM is small, but it works for the 00:16:09.340 --> 00:16:09.640 purposes. Basically, if I had a couple 00:16:13.080 --> 00:16:13.260 thousand dollars, I could probably buy a 00:16:16.320 --> 00:16:16.560 touch screen machine or I could run 00:16:18.960 --> 00:16:19.200 everything on it and do the streaming and do 00:16:24.960 --> 00:16:25.460 the video capture and do the PDF markup. 00:16:27.980 --> 00:16:28.480 But since both of these are so, 00:16:31.720 --> 00:16:31.960 the hardware that I use is so old and cheap 00:16:33.640 --> 00:16:33.840 and weak, I'd have to split it across 2 00:16:33.840 --> 00:16:34.340 machines. 00:16:37.160 --> 00:16:37.660 [Speaker 3]: There's also a beauty in making the stuff, 00:16:39.720 --> 00:16:40.120 having specific purposes for specific things 00:16:43.840 --> 00:16:44.160 where it's just not, yeah, 00:16:47.980 --> 00:16:48.320 it's like, I don't want a smart TV that plays 00:16:52.360 --> 00:16:52.540 Netflix. I want a Smart TV that has all the 00:16:55.520 --> 00:16:55.760 smarts that I turn my smart TV into a TV 00:16:56.120 --> 00:16:56.620 monitor. I 00:17:01.020 --> 00:17:01.520 [Speaker 1]: Don't want to yeah Really? 00:17:04.526 --> 00:17:04.540 I I totally feel that ethic I totally feel 00:17:04.859 --> 00:17:05.359 that ethic. 00:17:13.619 --> 00:17:13.940 [Speaker 3]: Oh, on the some other things, 00:17:16.319 --> 00:17:16.440 like if you want you To do highlighting in an 00:17:18.560 --> 00:17:19.060 org mode document you can use org web tools. 00:17:20.680 --> 00:17:20.880 I wrote this in the notes But you can use org 00:17:23.560 --> 00:17:23.720 web tools to download a web page And then you 00:17:26.480 --> 00:17:26.980 can use org remark to start highlighting in 00:17:29.440 --> 00:17:29.700 the org mode web page And then because it's 00:17:30.600 --> 00:17:30.740 an org mode document now, 00:17:32.600 --> 00:17:33.100 [Speaker 1]: right 00:17:36.200 --> 00:17:36.280 [Speaker 3]: you can just edit it directly If you have If 00:17:38.300 --> 00:17:38.760 you want other people to join in on an emacs 00:17:40.520 --> 00:17:41.020 session you could use a package like, 00:17:44.540 --> 00:17:45.040 what's it called, crdt.el 00:17:49.920 --> 00:17:50.160 That will allow 2 people with 2 different 00:17:52.320 --> 00:17:52.820 Emacs configurations to edit the same buffer. 00:17:58.460 --> 00:17:58.580 What? And you have a host that can host a 00:18:00.620 --> 00:18:01.120 [Speaker 1]: Interesting. 00:18:05.500 --> 00:18:06.000 [Speaker 3]: buffer too. And they have 1 optional 00:18:07.700 --> 00:18:08.200 extension for org mode that will synchronize 00:18:10.140 --> 00:18:10.640 the folding of the org drawers. 00:18:14.260 --> 00:18:14.760 [Speaker 1]: Interesting, I will look into that. 00:18:21.620 --> 00:18:22.120 [Speaker 3]: Like having I don't like if you want students 00:18:24.780 --> 00:18:25.280 like you have H highlight line mode. 00:18:26.120 --> 00:18:26.620 These are just some ideas. 00:18:28.100 --> 00:18:28.420 It's like you can have like highlight line 00:18:31.040 --> 00:18:31.540 mode so people can easily see which line 00:18:32.900 --> 00:18:33.400 you're on cursor tracking. 00:18:36.680 --> 00:18:37.180 And then you can have other people join in, 00:18:40.960 --> 00:18:41.320 students, or yeah, that's just a possible 00:18:41.320 --> 00:18:41.820 idea. 00:18:49.660 --> 00:18:50.000 [Speaker 1]: Is there anyone else in the big blue button 00:18:51.680 --> 00:18:52.180 room who has a question? 00:19:03.000 --> 00:19:03.280 All right, I'm going to go over to the pad 00:19:05.140 --> 00:19:05.280 and see if there are any pending questions I 00:19:11.280 --> 00:19:11.780 can address. Thanks PlasmaStrike. 00:19:12.980 --> 00:19:13.480 Yep. 00:19:29.640 --> 00:19:30.060 [Speaker 2]: To be tangled into source code or woven into 00:19:32.720 --> 00:19:33.220 a documentation file, which could be PDF, 00:19:36.140 --> 00:19:36.640 could be Markdown, could be OpenOffice, 00:19:39.600 --> 00:19:40.100 could be a notebook format. 00:19:42.860 --> 00:19:43.260 This methodology was conceived by Donald 00:19:51.460 --> 00:19:51.940 Knuth in 1984. The main purpose of literal 00:19:54.480 --> 00:19:54.660 programming is not only to make code or 00:19:56.720 --> 00:19:57.220 documentation or output more manageable, 00:20:01.020 --> 00:20:01.220 but to allow humans to create a data story to 00:20:02.960 --> 00:20:03.460 be pieced from a single source. 00:20:06.140 --> 00:20:06.340 What you see on the slide on the left hand 00:20:08.880 --> 00:20:09.380 side is the story and code inside an org-mod 00:20:14.220 --> 00:20:14.440 file. The file starts with some 00:20:17.260 --> 00:20:17.760 documentation, then you write back down the 00:20:21.660 --> 00:20:22.080 code, and at the bottom you see an output 00:20:26.040 --> 00:20:26.500 file, which is not shown in the slide itself. 00:20:28.140 --> 00:20:28.440 In the middle, you have the source code, 00:20:33.840 --> 00:20:34.000 which is the result of tangling or opening a 00:20:36.400 --> 00:20:36.900 buffer inside offload. 00:20:38.680 --> 00:20:38.940 On the very right-hand side, 00:20:42.540 --> 00:20:42.840 we have a PDF. Actually, 00:20:44.100 --> 00:20:44.600 this is HTML, random.org. 00:20:48.120 --> 00:20:48.420 The very same file that you see in the memory 00:20:52.360 --> 00:20:52.600 language. So the humans look at some of this 00:20:54.600 --> 00:20:54.720 code, and the machines look at other parts of 00:20:57.600 --> 00:20:58.040 the code. I actually did all my programming 00:20:59.760 --> 00:21:00.260 in the literate way even in the early 1990s, 00:21:02.720 --> 00:21:02.980 not using OrgMode, which didn't exist yet, 00:21:05.660 --> 00:21:06.160 but using Norman Ramsey's NoWeb preprocessor. 00:21:09.220 --> 00:21:09.720 They still use it inside Org Mode today. 00:21:11.400 --> 00:21:11.900 This preprocessor, NoWeb, 00:21:14.260 --> 00:21:14.480 allows you to tangle code from within an Org 00:21:16.020 --> 00:21:16.360 Mode file that is a self-standing file, 00:21:18.320 --> 00:21:18.820 much like Org Mode's edit functions, 00:21:21.520 --> 00:21:21.860 which export code blocks into buffers in 00:21:23.100 --> 00:21:23.600 whatever language the code blocks. 00:21:28.260 --> 00:21:28.760 In data science, these interactive notebooks, 00:21:30.900 --> 00:21:31.400 in 1 of the interpreted languages, 00:21:32.980 --> 00:21:33.400 like Julia, Python, or R, 00:21:36.900 --> 00:21:37.040 dominate. The basic technology is that of 00:21:39.120 --> 00:21:39.340 Jupyter notebooks, which take their name from 00:21:42.540 --> 00:21:42.900 Julia, Python, and R. And these notebooks use 00:21:43.780 --> 00:21:44.200 a spruce-stuffed shell, 00:21:47.440 --> 00:21:47.860 for example, IPython, and an option to add 00:21:52.540 --> 00:21:52.940 SQL cells. Alt mode inside Emacs has a large 00:21:55.840 --> 00:21:56.260 number of advantages. Some of them are listed 00:21:56.980 --> 00:21:57.480 here over these notebooks. 00:21:59.160 --> 00:21:59.660 2 of these stand out particularly. 00:22:02.860 --> 00:22:03.360 Different languages can be mixed, 00:22:05.140 --> 00:22:05.640 as shown in the image. 00:22:07.200 --> 00:22:07.700 While in Jupyter notebooks, 00:22:10.680 --> 00:22:10.880 a notebook is limited to running a kernel in 00:22:13.940 --> 00:22:14.440 1 language only. The content of the notebook, 00:22:16.240 --> 00:22:16.560 its document code or output part, 00:22:18.520 --> 00:22:18.680 can be exported in a variety of forms. 00:22:18.735 --> 00:22:18.790 [Speaker 3]: We are 00:22:19.640 --> 00:22:19.840 [Speaker 2]: currently the only person in this 00:22:21.020 --> 00:22:21.520 conference... ...To share with others, 00:22:23.660 --> 00:22:24.160 to use one's work in different reports...