summaryrefslogblamecommitdiffstats
path: root/2023/talks/uni.md
blob: 11d45730511f98259e764a9f60e2b46e4092f80b (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                                                                        
                                                        






                                                                                                    
            


                                                            

                                                           




                                                                                                                                                







                                                                     
 





































                                                                                                                                                                                                                                                        
                            





                                                                  
                         
                                                                  
                                                    



                                                                        
                                



                                                                      
                                                








                                                                        
                                                                     






                                                                    
                                


                                                                        

                                                                       

                     
                                                                      










                                                                                                                          



                                                                   









                                                                        
                                                                    





                                                                        
                                                                     
                                      
                                                                    
                                                                       
                                     
                                                                   
                                                                 


                                                                    
                                                
                                          
                                  


                                                                    





                                                           
[[!meta title="Authoring and presenting university courses with Emacs and a full libre software stack"]]
[[!meta copyright="Copyright © 2023 James Howell"]]
[[!inline pages="internal(2023/info/uni-nav)" raw="yes"]]

<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Authoring and presenting university courses with Emacs and a full libre software stack
James Howell

[[!inline pages="internal(2023/info/uni-before)" raw="yes"]]

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):
    -   <https://git.sr.ht/~jamesendreshowell/org-teach/blob/master/EmacsConf_2023_Howell_handout.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.
-   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
-   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.
-   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 ...
-   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.
-   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>
    -   Thank you very much, I'll definitively look into thisπŸ™
-   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?


[[!inline pages="internal(2023/info/uni-after)" raw="yes"]]

[[!inline pages="internal(2023/info/uni-nav)" raw="yes"]]