summaryrefslogblamecommitdiffstats
path: root/2021/emacsconf.ics
blob: 3fffa84714cd87821f1b2eb0b5f3b6164fde234d (plain) (tree)









































                                              
                       

                                                                           







                                            
                       




                                                                           








                                                                           
                       














                                                                           







                                                                
                       






























































































































































                                                                                     








                                                                           
                       

















                                                                           







                                            
                       








































                                                                           







                                            
                       








                                                                              







                                                                          
                       










                                                                           







                                                     
                       











                                                                           







                                               
                       













                                                                           







                                            
                       












                                                                           







                                                
                       





                                                                           







                                              
                       













                                                                           







                                               
                       






















                                                                           








                                                                           
                       



















                                                                             







                                              
                       










                                                                           







                                                                        
                       
































                                                                           








                                                                           
                       














                                                                           







                                            
                       



























                                                                           







                                                       
                       














                                                                           







                                            
                       



















                                                                           








                                                                           
                       

















                                                                           







                                            
                       

































                                                                           







                                                     
                       



































                                                                           







                                                                  
                       










                                                                           







                                                
                       
















                                                                           







                                                     
                       









































                                                                           








                                                                           
                       















                                                                           







                                            
                       










                                                                           







                                                     
                       

























                                                                           







                                               
                       

                                                                           







                                              
                       

                                                                           







                                            
                       









                                                                           







                                                                         
                       
























                                                                           







                                                    
                       



















                                                                           








                                                                           
                       















                                                                           







                                                    
                       










                                                                               







                                                  
                       






                                                                           







                                                            
                       














































                                                                           








                                                                           
                       














































                                                                           







                                            
                       











                                                                           





                                                                           
                                            
                                          
                       











                                                                           







                                            
                       









                                                                           







                                            
                       




























                                                                           







                                            
                       





                                                                           







                                                                        
                       






























                                                                                                 







                                                            
                       


















                                                                           







                                                            
                       











                                                                           







                                              
                       






















                                                                               







                                            
                       












                                                                           







                                                              
                       












                                                                           







                                               
                       

                                                                           
          
            
BEGIN:VCALENDAR
VERSION:2.0
PRODID:EmacsConf
X-WR-CALNAME:EmacsConf 2021
X-WR-TIMEZONE:America/Toronto
X-WR-CALNAME:EmacsConf
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:America/Toronto
BEGIN:DAYLIGHT
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
DTSTART:20210314T070000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
DTSTART:20211107T060000
END:STANDARD
BEGIN:DAYLIGHT
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
DTSTART:20220313T070000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
DTSTART:20221106T060000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
SUMMARY:Opening remarks
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-day1-open
URL:https://emacsconf.org/2021/talks/day1-open
DTSTART;TZID=America/Toronto:20211127T090000
DTEND;TZID=America/Toronto:20211127T090500
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/day1-open\n# Opening remarks
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs News Highlights
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-news
URL:https://emacsconf.org/2021/talks/news
DTSTART;TZID=America/Toronto:20211127T090500
DTEND;TZID=America/Toronto:20211127T091000
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/news\n# Emacs News Highlights\nSacha Chua <mailto:sach
 a@sachachua.com> - pronouns: she/her\n\nQuick overview of Emacs community 
 highlights since the last conference\n\n<https://github.com/sachac/emacsco
 nf-2021-emacs-news-highlights>
END:VEVENT
BEGIN:VEVENT
SUMMARY:The True Frownies are the Friends We Made Along the Way: An Anecdot
 e of Emacs's Malleability
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-frownies
URL:https://emacsconf.org/2021/talks/frownies
DTSTART;TZID=America/Toronto:20211127T091100
DTEND;TZID=America/Toronto:20211127T093100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/frownies\n# The True Frownies are the Friends We Made 
 Along the Way: An Anecdote of Emacs's Malleability\nCase Duckworth\n\nEmac
 s is well-known for being extremely flexible\, programmable\, and\nextensi
 ble\; in fact\, that's probably the biggest reason it's still\nbeing used 
 after 40+ years of existence\, and even has enough clout to\ngenerate an e
 ntire conference in its name.  In this medium-length\npresentation\, I wil
 l add another point to the data set proving Emacs's\nabilities\, by narrat
 ing the latest package I made\, \\`frowny.el\\`\, from\nits conception to 
 its current\, nearly-completed state.\n\nI wrote frowny.el to scratch some
 one else's itch as a joke on IRC\, but\nit has been called "pretty useful\
 , for a joke package."  I feel like\nthat encapsulates the spirit of Emacs
  and that's why I want to present\non this topic.\n\nAlong the way\, I'll 
 discuss just a little of my own history of Emacs\,\nand why I feel it's a 
 great tool for non-technical users to sink their\nteeth into.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Choose Your Own (Technology-Enhanced Learning) Adventure
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-adventure
URL:https://emacsconf.org/2021/talks/adventure
DTSTART;TZID=America/Toronto:20211127T093400
DTEND;TZID=America/Toronto:20211127T095400
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/adventure\n# Choose Your Own (Technology-Enhanced Lear
 ning) Adventure\nGreta Goetz\n\nThis presentation will move through Emacs 
 artifacts: first illustrating possible paths for beginners and then mappin
 g out the significance of the enhanced learning potential of Emacs (Caille
 t in Andler & Guerry\, Engelbart\, Markauskaite & Goodyear). The technolog
 y-enhanced learning (TEL) that Emacs affords includes a systems view of 'm
 any\, many features' (Stallman) which surpass the confines of a pre-fabric
 ated environment (Stiegler). This affords diverse possibilities for indivi
 duals to interact creatively and autonomously to satisfy their own needs (
 Ill\nich). Its adaptability will be shown to be an asset in supporting the
  learning trends identified by the latest pedagogical research (Guo).\n\n#
  Intro\n\nThe 'many\, many features' (Stallman 2002: 4) of Emacs do not li
 mit imaginable types of interactivity\, supporting both formal and informa
 l learning (cf. Caillet in Andler & Guerry 2008). Emacs can function as a 
 scaffold for development (cf. Vygotsky 1979: 86)\, promoting the creative 
 and autonomous ability of individuals to interact with their digital envir
 onment and others who share the use of this tool (Illich 1973). Individual
 s can use Emacs as often or seldom as they want to express their needs and
  meaning in action\, with no obligation to use it (cf. Illich 1973).\n\nTh
 e formal learning involved pertains to Emacs programs and documentation (t
 he 'temple') while related discussion and smaller task-based problem solvi
 ng represents examples of informal learning (the 'forum') (cf. Caillet in 
 Andler & Guerry 2008). As a context-rich environment (Trocmé-Fabre 1999)\,
  Emacs fulfills the promise of general computing: not boxing users into pe
 rsonas (cf. Stiegler 2018) but allowing users at all levels to organize an
 d assemble multiple knowledge domains (Markauskaite & Goodyear 2017) and p
 rograms so that they are 'just right'. People wanting to create tailored l
 earning environments who feel alienated or unsupported by pre-fabricated t
 ext and programming environments will find their way with Emacs.\n\n1.  Wh
 at if we are beginners overwhelmed by formal Emacs documentation? Two pote
 ntial learning paths:\n\n    - a. Build on a needs-basis. Make your own ar
 tifacts: no use-case is too small\; leave your trace.\n    - b. Study othe
 rs' inits and use-cases\; Read Planet EmacsLife\; Consult programmer or po
 wer user use-cases\; Map out workflows.\n\n2. Emacs as personal\, creative
 \, autonomous:\n\n    - a. Emacs allows for organic ongoing changes to the
  organization of knowledge\, imagination\, and experience (cf. Guerry & Ga
 ume 2009) . This is important as not all learners have the same spatial/vi
 sual needs and because these needs and knowledge can change over time (Vyg
 otsky 1979\; Gardner 1983\; Wang 2020).\n    - b. Emacs allows us to contr
 ol our tools and tasks (Illich 1973). By contrast\, care-less use of pre-f
 abricated apps can lead to loss of know-how in life (Stiegler 2018).\n   -
  c. The art of collecting traces (digital or not) is timeless - and import
 ant to survival.\n\n3.  Emacs as systems design for technology-enhanced le
 arning (TEL):\n\n    - a. Good TEL design performance should also educate 
 the designer (Goodyear & Retalis 2010). Further\, good design focuses on '
 frameworks'\, which are systems 'that can be customized\, specialized\, or
  extended to provide more specific\, more appropriate\, or slightly differ
 ent capabilities' (Alexander 1993 in Gabriel 1996)\, assembling epistemic 
 domains (Markauskaite & Goodyear 2017). This pedagogical approach is suppo
 rted by Emacs artifacts (packages\, documentation\, forums\, etc.).\n    -
  b.  The 'wise' use of programming (Crichton 1983) actively manages and or
 ganizes workflow. This permits iterative development. Elementary use-case:
  a workflow that relies on PPT and Zoom vs. already having a more modular 
 viewpoint supported by diverse Emacs packages. The latter adaptability is 
 supported by the latest educational research (Guo). Further: Emacs allows 
 movement from user to contributor (Stiegler 2018\; Stavrou).\n    - c. Wis
 e programming can include fun programming - 'there are people who want to 
 put a stop to that' (Crichton 1983\; Gaffney 2019).\n    - d. Extending th
 is systems/design view\, Emacs is developed and maintained by a community 
 dedicated to supporting this freedom of use in these multiple contexts (cf
 . Illich 1973).\n    - e. One perspective is less likely to override other
 s in such a heterogeneous environment (Morin 2004).\n\n# Conclusion\n\nEma
 cs does not limit any imaginable type of interactivity and promotes a dive
 rsity of related content\, further supporting the pursuit of more advanced
  TEL (viz. Guo). This was illustrated through an elementary use-case that 
 compared being limited to PPT as opposed to having basic familiarity with 
 Emacs\, which permits manageable\, continuous exploration of knowledge\, w
 orkflows\, and tools (cf. Alexander in Gabriel\; Goodyear & Retalis) and m
 ovement from consumer to creator (Stiegler\; Stavrou). Using Emacs means b
 eing able to use a sophisticated digital tool\, thanks to the contribution
 s of heterogeneous maintainers\, developers\, and community members whose 
 artifacts comprise a meta picture. It is possible\, through using Emacs\, 
 to learn about the design of digital learning and learning in general as a
 ccess to knowledge is not walled off by prefabricated design(cf. Illich\; 
 Stiegler). We can choose our own adventure.\n\n\n# References\n\n## Genera
 l workflow and fun:\n-   Bin\, C. (2020). Mastering Emacs in one year. <ht
 tps://github.com/redguardtoo/mastering-emacs-in-one-year-guide/blob/master
 /guide-en.org#on-the-shoulders-of-giants>. Accessed 25 October 2021.\n-   
 Gaffney\, N. (2019). Oblique strategies.  <https://github.com/zzkt/oblique
 -strategies>. Accessed 25 October 2021.\n-   Goetz\, G. (2021). Additional
  references: A back-to-school/GTD Emacs journey. <https://gretzuni.com/art
 icles/a-back-to-school-gtd-emacs-journey>. Accessed 25 October 2021.\n-   
 Guerry\, B. (2020). Org-mode features you may not know. <https://bzg.fr/en
 /some-emacs-org-mode-features-you-may-not-know/>. Accessed 25 October 2021
 .\n-   Kaiser\, K. (2017). Writing a technical book in Emacs and Org-mode.
  <https://www.kpkaiser.com/programming/writing-a-technical-book-in-emacs-a
 nd-org-mode/>. Accessed 25 October 2021.\n-   Planet Emacs Life. <https://
 planet.emacslife.com/>. Accessed 25 October 2021.\n-   Stavrou\, P. My pac
 kages for GNU Emacs. <https://protesilaos.com/emacs/>. Accessed 25 October
  2021.\n-   Wellons\, C. Emacs articles. <https://nullprogram.com/tags/ema
 cs/>. Accessed 25 October 2021.\n\n##  On TEL design:\n-   Caillet\, E. (2
 008). L’exposition\, le musée: L’éducation informelle comme école de l’édu
 cation formelle. In Andler\, D. & Guerry\, B. (Eds.). *Apprendre demain: S
 ciences cognitives et éducation à l’ère numérique*\, 137-154. Paris: Hatie
 r.\n-   Crichton\, M. (1983). *Electronic life*. New York: Knopf.\n-   De 
 Bono\, E. (2009). *Think! Before it's too late*. London: Random House.\n- 
   Engelbart\, D. (1962). *Augmenting human intellect: A conceptual framewo
 rk*. Menlo Park: Stanford Research Institute.\n-   Drosos\, I. & Guo\, P. 
 (2021). Streamers teaching programming\, art\, and gaming: Cognitive appre
 nticeship\, serendipitous teachable moments\, and tacit expert knowledge. 
 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC)\, 
 short paper\, 2021. <https://pg.ucsd.edu/pubs.htm>. Accessed 25 October 20
 21.\n-   Gabriel\, R. (1996). *Patterns of software*. New York\, Oxford: O
 xford University Press.\n-   Goodyear\, P. & Retalis\, S. (2010). Learning
 \, technology and design. In Goodyear\, P. & Retalis\, S. (Eds.). *Technol
 ogy-enhanced learning: Design patterns and pattern languages*\, 1-27. Rott
 erdam\, Boston: Sense Publishers.\n-   Guerry\, B. & Gaume\, N. (2008). Ce
  que les jeux vidéo nous apprennent. In Andler\, D. & Guerry\, B. (Eds.). 
 *Apprendre Demain: Sciences cognitives et éducation à l’ère numérique*\, 1
 55-159. Paris: Hatier.\n-   Guo\, P. (2018). Students\, systems\, and inte
 ractions: Synthesizing the first\nfour years of Learning@Scale and chartin
 g the future. L@S 2018\, June 26–28\, 2018\, London\, United Kingdom. DOI:
  https://doi.org/10.1145/3231644.3231662. <https://pg.ucsd.edu/pubs.htm>. 
 Accessed 25 October 2021.\n-   Guo\, P.\, Kim\, J. & Rubin\, R. (2014). Ho
 w video production affects student engagement: An empirical study of MOOC 
 videos. ACM Conference on Learning at Scale. <https://pg.ucsd.edu/pubs.htm
 >. Accessed 25 October 2021.\n-   Illich\, I. (1973). *Tools of conviviali
 ty*. New York: Harper & Row.\n-   Kim\, J.\, Guo\, P.\, Seaton\, D.\, Mitr
 os\, P.\, Gajos\, K. & Miller\, R. (2014). Understanding in-video dropouts
  and interaction peaks in online lecture videos. ACM Conference on Learnin
 g at Scale. <https://pg.ucsd.edu/pubs.htm>. Accessed 25 October 2021.\n-  
  Markauskaite\, L. & Goodyear\, P. (2017). *Epistemic fluency and professi
 onal education: innovation\, knowledgeable action and actionable knowledge
 *. Dordrecht: Springer.\n-   Markel\, J. & Guo\, P. (2020). Designing the 
 future of experiential learning environments for a post-COVID world: A pre
 liminary case study. NFW ’20 (Symposium on the New Future of Work)\, Augus
 t 3–5\, 2020\, Virtual Event. <https://pg.ucsd.edu/pubs.htm>. Accessed 25 
 October 2021.\n-   Morin\, E. ([2004] 2008). *La Méthode - tome 6: Éthique
 *. Éditions du Seuil: Paris.\n-   Stallman\, R. (2002). *Free software\, f
 ree society*. GNU Press\, Free Software Foundation.\n-   Stiegler\, B. (20
 18). *The neganthropocene*. Open Humanities Press.\n-   Trocmé-Fabre\, H. 
 (1999). *Réinventer le métier d’apprendre*. Paris: Éditions d’organisation
 .\n-   Vygotsky\, L. (1979). *Mind in society: The development of higher p
 sychological processes*. Cambridge and London: Harvard University Press.\n
 -   Wang\, S. (2020). Open knowledge. Hope in Source. <https://hopeinsourc
 e.com/open-knowledge/#open-source-knowledge-proof-of-work>. Accessed 25 Oc
 tober 2021.\n\n\n# Availability and preferred Q&A approach\n\nDue to the p
 andemic situation\, my teaching schedule fluctuates so I\nwill not know my
  availability until much closer to the\ndate. Therefore\, I can only guara
 ntee delayed answer response\n(whatever you request)\, but if available\, 
 will join live.\nMay I please note that I will be pre-recording my video i
 f this submission is accepted.\n\n\n# Speaker release\n\nBy submitting thi
 s proposal\, I agree that my presentation at\nEmacsConf 2021 is subject to
  the following terms and conditions:\n\nThe EmacsConf organizers may captu
 re audio and video (a "Recording")\nof my presentation and any associated 
 materials\, which may include\nslides\, notes\, transcripts\, and prerecor
 ding(s) of my presentation\nthat I provide to the EmacsConf organizers.\n\
 nI authorize the EmacsConf organizers to distribute\, reproduce\,\npublicl
 y display\, and prepare derivative works of the Recording and\nany derivat
 ive works of the Recording (the "Licensed Materials")\nunder the terms of 
 the Creative Commons Attribution-ShareAlike 4.0\nInternational (CC BY-SA 4
 .0) license.\n\nI grant to the EmacsConf organizers permission to use my n
 ame\,\nlikeness\, and biographic information in association with their use
 \nof the Licensed Materials under the above license.\n\nI represent that I
  have the authority to grant the above license to\nthe EmacsConf organizer
 s. If my presentation incorporates any\nmaterial owned by third parties\, 
 I represent that the material is\nsublicensable to the EmacsConf organizer
 s or that my use of them is\nfair use.
END:VEVENT
BEGIN:VEVENT
SUMMARY:"GNU's Not UNIX: Why Emacs Demonstrates The UNIX Philosophy Isn't A
 lways The Only Answer"
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-unix
URL:https://emacsconf.org/2021/talks/unix
DTSTART;TZID=America/Toronto:20211127T095600
DTEND;TZID=America/Toronto:20211127T100600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/unix\n# GNU's Not UNIX: Why Emacs Demonstrates The UNI
 X Philosophy Isn't Always The Only Answer\nDaniel Rose\n\nThe talk targets
  users who are curious about computational philosophies\,\nor those who mi
 ght not know how to best utilise Emacs conceptually. The\ntalk will cover 
 what the UNIX philosophy is\, the GNU Free Software\nprinciples\, a typica
 l (Neo)Vi(m) user's approach\, and then how one might\naccomplish this in 
 Emacs combining the aformentioned ideals. The\nlisteners will learn how th
 ey can approach Emacs ideologically\, and how\nblocking themselves into on
 e philosophy or the other will limit their\nefficiency. Although you may b
 e a veteran GNU/Linux and Emacs user\,\nunderstanding how to use both phil
 osophies together will still allow you\nto be more performant than without
 .\n\n\n\n# Outline\n\n-   5-10 minutes:\n    Cut out the portions of expla
 ining the whole UNIX and GNU philosophies\n    and instead talk about conc
 rete examples:\n    -   How can one limit their usage of CLI tools while s
 till maintaining\n        the ideals of both.\n    -   How using CLI tools
  can still perfectly flow into Emacs.\n    -   How having all programs in 
 Emacs and unified keybindings is akin\n        to a terminal user.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs manuals translation and OmegaT
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-omegat
URL:https://emacsconf.org/2021/talks/omegat
DTSTART;TZID=America/Toronto:20211127T100900
DTEND;TZID=America/Toronto:20211127T101900
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/omegat\n# Emacs manuals translation and OmegaT\nJean-C
 hristophe Helary\n\nEven if it is generally agreed that software localizat
 ion is a good thing\, Emacs is lacking in that respect for a number of tec
 hnical reasons. Nonetheless\, the free software using public could greatly
  benefit from Emacs manuals translations\, even if the interface were to r
 emain in English.\n\nOmegaT is a multiplatform GPL3+ "computer aided trans
 lation" (CAT) tool running on OpenJDK 8. CATs are roughly equivalent for t
 ranslators to what IDEs are for code writers. Casual translators can benef
 it from their features but professionals or commited amateurs are the most
  likely to make the most use of such tools.\n\nWhen OmegaT\, free software
  based forges and Emacs meet\, we have a free multi-user translation envir
 onment that can easily sustain the (close to) 2 million words load that co
 mprise the manuals distributed with Emacs\, along with powerful features l
 ike arbitrary string protection for easy typing and QA (quality assurance)
 \, automatic legacy translation handling\, glossary management\, history b
 ased or predictive autocompletion\, etc.\n\nThe current trial project for 
 French is hosted on 2 different forges:\n\n1.  sr.ht hosts the source file
 s\n    <https://sr.ht/~brandelune/documentation_emacs/>\n2.  chapril hosts
  the OmegaT team project architecture\n    <https://sr.ht/~brandelune/docu
 mentation_emacs/>\n\nThe sources are regularly updated with a po4a based s
 hell script.\n\n# Outline\n\n- Duration: 10 minutes\n- Software used durin
 g the presentation\n  - [po4a](https://po4a.org) a tool to convert documen
 tation formats to and from the commonly used `gettext` **PO** format.\n   
  po4a supports the `texinfo` format along with many others.\n  - [OmegaT](
 https://omegat.org) a "computer aided translation" tool used by translator
 s to efficiently combine translation ressources (legacy translations\, glo
 ssaries\, etc.) so as to produce more consistent translations.\n\nDuring t
 he presentation\, I will show:\n\n- How to use po4a to convert the texi fi
 les to the PO format (the org.org file is also converted)\n- What are the 
 specificities of the Emacs manuals and what difficulties they present to t
 he tanslator\n- How to address those specificities in OmegaT\, with regula
 r expressions\n- How to use OmegaT features such as arbitrary string prote
 ction\, legacy translation handling\, glossaries\, autocompletion\, QA\, e
 tc.\n- How to use OmegaT with a team of 2 (or more) translators working at
  the same time\n- How to solve translation conflicts\n\nI will *not* show:
 \n\n- How to create an OmegaT project\n- How to setup an OmegaT team proje
 ct\n- How to use OmegaT from the command line to work in localization pipe
 lines\n- How to use machine translation and MT "post-edit"\n- How to conve
 rt back the translated files to texi format\n- How to install translated t
 exi files for use in Emacs
END:VEVENT
BEGIN:VEVENT
SUMMARY:NonGNU ELPA Update
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-nongnu
URL:https://emacsconf.org/2021/talks/nongnu
DTSTART;TZID=America/Toronto:20211127T102200
DTEND;TZID=America/Toronto:20211127T103200
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/nongnu\n# NonGNU ELPA Update\nKaluđerčić\, Philip\n\nN
 onGNU ELPA was announced last year\, as a package repository\nthat will be
  enabled by default in Emacs\, but doesn't require\nany copyright assignme
 nt. This means that a lot of popular\npackages can now be installed easier
 \, without any additional\nconfiguration.\n\nIn this talk I would like the
  give a reminder of what NonGNU\nELPA is and how it works\, update the par
 ticipants on what has\nhappened since last year and what maintainers have 
 to do if they\nwant their packages to be added to the repository.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Manual Package Management in The Era of Repositories - Why and How
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-borg
URL:https://emacsconf.org/2021/talks/borg
DTSTART;TZID=America/Toronto:20211127T103500
DTEND;TZID=America/Toronto:20211127T104500
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/borg\n# Manual Package Management in The Era of Reposi
 tories - Why and How\nDhavan (codingquark)\n\nEmacs now has many package r
 epositories - enought to have conflicts\nand arguments about. The packages
  are becoming big\, they depend on many\nother packages and it is not easy
  to keep track of what all is being\ninstalled in our Emacsen. An aggressi
 ve way out of this is to use Yet\nAnother Package and install all elisp co
 de manually - with borg[1].\n\n[1]: <https://github.com/emacscollective/bo
 rg>\n\n\n\n# Outline\n\n-   5-10 minutes: (brief description/outline)\n   
  1.  What are we trying to solve?\n    2.  What is borg?\n    3.  How to u
 se it?\n    4.  Assimilate a package for demo
END:VEVENT
BEGIN:VEVENT
SUMMARY:telega.el and the Emacs community on Telegram
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-telega
URL:https://emacsconf.org/2021/talks/telega
DTSTART;TZID=America/Toronto:20211127T104800
DTEND;TZID=America/Toronto:20211127T105800
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/telega\n# telega.el and the Emacs community on Telegra
 m\nGabriele Bozzola and Evgeny Zajcev\n\nTelegram is a cross-platform inst
 ant messaging system. The large number of\nfeatures and the widespread ado
 ption make it a good choice for both private\nconversations with friends a
 nd for large online communities. In this talk\, I\nam going to present the
  Emacs community on Telegram and its initiatives. I\nam also going to disc
 uss telega.el\, the Emacs client for Telegram. telega.el\nis a high-qualit
 y package that perfectly integrates in Emacs. It supports\nthe vast majori
 ty of the features supported by the official clients\, while\nadding sever
 al unique ones. In the talk\, I will present the package and\nhighlight so
 me of the most important features.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Introducing N-Angulator
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-nangulator
URL:https://emacsconf.org/2021/talks/nangulator
DTSTART;TZID=America/Toronto:20211127T110100
DTEND;TZID=America/Toronto:20211127T111100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/nangulator\n# Introducing N-Angulator\nKevin Haddock\n
 \nThe Unix file system is essentially an N-dimentional sparse array that\n
 currently lacks a decent editor and browser which\ncan effectively leverag
 e the logical tri-angulation (or\, more properly\n"n-angulation") of atoms
 /blobs within it.\n\nN-Angulator is the genesis\, to wit\, the "Model-T\,"
  of such a program.\n\n(see google drive link below for a very old uncircu
 lated prototype\nvideo demo.   Be sure and turn the volume UP!)\n\nna.intr
 o.flv\n<https://drive.google.com/file/d/1EZN0Xs8eGlEbSIYFml2lp3GCNnmLQa98/
 view?usp=drive_web>\n\n\n\n# Outline\n\n-   5-10 minutes: (brief descripti
 on/outline)\n\nThe reconceptualization of the Unix file system as the N-Di
 mensional\nsparse array will be discussed.\n\nA simple pre-existing databa
 se will be queried.\n\nIf time\, questions will be entertained by video/au
 dio and/or IRC.
END:VEVENT
BEGIN:VEVENT
SUMMARY:A day in the life of a janitor
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-janitor
URL:https://emacsconf.org/2021/talks/janitor
DTSTART;TZID=America/Toronto:20211127T111400
DTEND;TZID=America/Toronto:20211127T113400
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/janitor\n# A day in the life of a janitor\nStefan Monn
 ier\n\nBecause of a reckless former Emacs maintainer that shall\n  better 
 stay unnamed\, ELisp has seen a fair bit of churn in the last 10\n  years\
 , making it necessary to clean up "old" code [in order to open up\n  the r
 oad for yet more recklessness? ].\n  In this documentary we will follow a 
 famous janitor in his every day job\n  dealing with the aftermath of the c
 l-lib / lexical-binding party.\n\n-   ~20 minutes\n    Here really\, I'm n
 ot sure how much time this will take.  I put 20\n    minutes because I thi
 nk I might be able to fill that and I think more\n    than that could turn
  too boring.  I intend to make it a "live coding"\n    kind of thing\, wit
 hout anything like an outline: it's basically "make"\n    followed by fixi
 ng the warnings.
END:VEVENT
BEGIN:VEVENT
SUMMARY:How to help Emacs maintainers?
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-maintainers
URL:https://emacsconf.org/2021/talks/maintainers
DTSTART;TZID=America/Toronto:20211127T113900
DTEND;TZID=America/Toronto:20211127T114900
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/maintainers\n# How to help Emacs maintainers?\nBastien
  Guerry\n\nAfter 11 years of helping as the Org maintainer\, I would\nlike
  to share a few lessons learned.  My goal is help everyone take\ncare of E
 macs maintainance by taking care of Emacs maintainers.\n\n\n\n# Outline\n\
 n-   5-10 minutes
END:VEVENT
BEGIN:VEVENT
SUMMARY:Typesetting Gregorian Chant with Emacs
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-gregorian
URL:https://emacsconf.org/2021/talks/gregorian
DTSTART;TZID=America/Toronto:20211127T115200
DTEND;TZID=America/Toronto:20211127T120200
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/gregorian\n# Typesetting Gregorian Chant with Emacs\nS
 pencer King\n\nThere are a variety of methods for typesetting gregorian\nc
 hant scores and outputting high-quality sheet music. One of these is\na to
 ol called Gregorio\, which integrates with LaTeX allowing scores to\nbe cl
 eanly inserted into other documents. All Gregorio files are plain\ntext\, 
 allowing them to easily be shared with other users and managed\nwith a ver
 sion control system. In this talk\, I will give a brief\noverview of the G
 regorio tool and then show how it can be used in\nEmacs by typesetting a s
 imple score. All code and examples will be\nmade available to help new use
 rs get started with typesetting their\nown scores.\n\n\n\n# Outline\n\n-  
  5-10 minutes: (brief description/outline)\n    1.  Introduction to chant 
 music\n    2.  Introduction to Gregorio\n    3.  Example of typesetting a 
 score in Emacs\n    4.  Code and example availability
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs and Montessori Philosophy
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-montessori
URL:https://emacsconf.org/2021/talks/montessori
DTSTART;TZID=America/Toronto:20211127T123000
DTEND;TZID=America/Toronto:20211127T124000
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/montessori\n# Emacs and Montessori Philosophy\n\n\nAs 
 a former Montessori guide and now parent\, I often think about the\nrelati
 onship of this particular educational philosophy and how it manifests\nin 
 my work with software\, Emacs in particular. This talk introduces the\ncon
 cept of Emacs as an educational environment and how it expresses elements 
 of\nMontessori psychology regarding "Human Tendencies". Human tendencies a
 re innate\ndrives present in everybody that allow us to explore and make s
 ense of our world.\n\n\n\n# Outline\n\n-   5-10 minutes: (brief descriptio
 n/outline)\n    Quick overview of a Montessori classroom environment:\n\n 
    -   the adults or guides primarily observe and present material\n    - 
   the children are free to explore materials as they choose (within limits
 )\n    -   the environment itself is prepared specifically to foster engag
 ement\n\n    Enumerate the "Human Tendencies":\n\n    -   Abstraction\n   
  -   Activity\n    -   Communication\n    -   Exactness\n    -   Explorati
 on\n    -   Manipulation (of the environment)\n    -   Order\n    -   Orie
 ntation\n    -   Repetition\n    -   Self-Perfection\n    -   Work (also d
 escribed as "purposeful activity")\n\n    How does Emacs express these thi
 ngs?\n\n    -   in the short version\, pose the question\, and perhaps giv
 e one example.\n    -   Emacs is an environment that provides facilities f
 or individuals to\n        find their way to proficiency through their Hum
 an Tendencies.\n    -   We are all both learners and guides\, Emacs is our
  classroom
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs Research Group\, Season Zero: What we did together with Emacs
  in 2 hours a week for a year
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-erg
URL:https://emacsconf.org/2021/talks/erg
DTSTART;TZID=America/Toronto:20211127T124300
DTEND;TZID=America/Toronto:20211127T125800
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/erg\n# Emacs Research Group\, Season Zero: What we did
  together with Emacs in 2 hours a week for a year\nNoorah Alhasan\, Joe Co
 rneli\, Raymond Puzio\, Leo Vivier\n\nThe four of us met at EmacsConf 2020
 \, and joined together around a\ncommon interest in Emacs and research.  S
 ince then\, we have convened as\nthe Emacs Research Group for weekly meeti
 ngs.  During these meetings\, we\ntook notes collaboratively\, using a ‘co
 nflict-free replicated data type’\npackage (crdt.el)\; at the end of each 
 session\, we debriefed using a\ntemplate that we call a Project Action Rev
 iew (PAR).  As as a\nmeta-review of our sessions\, every six weeks we prep
 ared a Causal\nLayered Analysis (CLA)\, which gave us a different perspect
 ive on what we\nhad done.  We reflected further on our experiences and met
 hods\, linking\nour CLA to plans and design patterns.  As a formal researc
 h output\, we\ncontributed a write-up of these matters to a joint paper wh
 ich we\npresented at the Pattern Languages of Programs Conference (PLoP 20
 21).\nThe paper included an interactive workshop\, in which we explored ro
 les\nin real-time problem solving and collaboration.\n\nIn our short talk 
 we share information about these methods\, making a\ncase for other people
  getting together and creating their own small\nresearch communities simil
 ar to ours.
END:VEVENT
BEGIN:VEVENT
SUMMARY:One effective CS grad student workflow
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-cs
URL:https://emacsconf.org/2021/talks/cs
DTSTART;TZID=America/Toronto:20211127T130100
DTEND;TZID=America/Toronto:20211127T131100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/cs\n# One effective CS grad student workflow\nGreg Col
 adonato\n\nWhen I was an undergrad\, I learned many things\, most of\nwhic
 h I forgot. In the time since then\, I've discovered Org Mode\, Org\nRoam\
 , Org Noter\, Org Ref. PDF Tools\, and Anki. I would like to share\nmy app
 roach for capturing all the information that comes my way as a\nMS CS stud
 ent at Georgia Tech\, in the hopes that I can both get\nfeedback on ways t
 o improve the system I use\, as well as hopefully\ninspire others to build
  workflows that make them more productive.\n\n\n\n# Outline\n\n-   5-10 mi
 nutes: Go through some typical workflows associated with being a grad stud
 ent\, using the packages mentioned in the abstract.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Using Org-Mode For Recording Continuous Professional Development
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-professional
URL:https://emacsconf.org/2021/talks/professional
DTSTART;TZID=America/Toronto:20211127T131400
DTEND;TZID=America/Toronto:20211127T132400
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/professional\n# Using Org-Mode For Recording Continuou
 s Professional Development\nPhilip Beadling\n\nI recently had the pleasure
  of being audited for my CPD record with one\nof the large engineering pro
 fessional bodies.  I decided to harness\norg-mode's TODO lists to record C
 PD items and my progress against them\ncompletely within Emacs.  I also wa
 nted the ability to export the data\nin a well presented\, compact format 
 for auditing submission.\n\nThe project was a success (I passed the audit)
  and the resulting system\nintegrates really well into my wider daily Emac
 s workflow\, making future\nCPD recording seamless.\n\nThe talk will expla
 in how I tweaked and extended org-mode to get it to\nrecord the data I wan
 ted\, followed by a demo.\n\nA basic demo org file with embedded elisp can
  be seen here:\n<https://raw.githubusercontent.com/falloutphil/Misc/master
 /cpd.org>\n\nA basic generated PDF from the basic demo is here:\n![img](ht
 tps://preview.redd.it/nvdpmityhuw51.png?width=1169&format=png&auto=webp&s=
 e0c5080560c877aa02933a40c224e52b8a1fed3b)\n\nI have a much more involved e
 xample I could also use for the demo.\n\nThe template contains a few examp
 les.  Examples are Goals that are split\nup into Activities. All Activitie
 s must have a Goal\, and within a Goal\nall activities must be complete fo
 r the Goal to be automatically set to\ncomplete.\n\nIt's basically leverag
 ing Org Capture Templates to create custom Goals\nand Activities.\n\nOn sa
 ve or update these are then rendered into a table using Column View.\n\nAc
 tivities are sorted by date they were completed on.\n\nThe Column View is 
 pre-configured to be exported to PDF in a condensed\nbut readable format f
 or submission. It stays fairly readable even when\nthe pages get busy.\n\n
 The elisp required is all under the "Config" bullet and Emacs will ask\nto
  execute it on opening the Org file. The elisp concerns itself with\nnice 
 custom org capture functions and a few functions to ensure nice\nformattin
 g on export\, etc.\n\n\n\n# Outline\n\n-   5-10 minutes:\n\nA quick walkth
 rough of the setup and functions\, followed by a demo of how\nto add CPD i
 tems\, and update them.  Finally show generation of a PDF\ncontaining all 
 the items tabulated and ready for audit review.  I\nestimate this at appro
 x 10 minutes.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Creating technical API documentation and presentations using org-ba
 bel\, restclient\, and org-treeslide
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-tech
URL:https://emacsconf.org/2021/talks/tech
DTSTART;TZID=America/Toronto:20211127T132700
DTEND;TZID=America/Toronto:20211127T133700
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/tech\n# Creating technical API documentation and prese
 ntations using org-babel\, restclient\, and org-treeslide\nJan Ypma\n\nThe
  emacs org-babel package is often mentioned in conjunction with\nliterate 
 programming. The ability to mix code segments with prose\nindeed offers an
  intuitive way to augment semantic code pieces with\ntextual descriptions.
 \n\nIn recent projects\, I've started to turn to org-mode as the primary\n
 format to maintain technical documentation\, as well as slides for a\ntech
 nical language course. By using org-babel to pull in "live" code\nfor REST
  requests\, language examples\, and shell scripts\, one can be\nsure that 
 the documentation and slides are never out of date.\n\nThe session will sh
 ow how leverage org-babel\, restclient and\norg-treeslide to write and pre
 sent technical documentation with style.\n\n\n# Outline\n\n- Introduction\
 n- Demo: Developer guide\n- Demo: REST API guide\n- Demo: Presentations\n-
  Used packages and configuration
END:VEVENT
BEGIN:VEVENT
SUMMARY:Org as an executable format
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-exec
URL:https://emacsconf.org/2021/talks/exec
DTSTART;TZID=America/Toronto:20211127T134100
DTEND;TZID=America/Toronto:20211127T135100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/exec\n# Org as an executable format\nTom Gillespie\n\n
 Org mode is known for its flexibility\, power\, and staggeringly diverse\n
 number of workflows\, users\, and use cases.\n\nThis talk explores just ho
 w far we can push the boundaries of the sane\nand sensible with regard to 
 Org workflows.\n\nIn particular it will discuss shebang blocks\, and elvs:
  two parts of a\ncomplete system for creating executable Org files.\n\nOrg
  syntax does not support shebang lines. However\, it turns out that\nOrg s
 yntax enables something even better &#x2014\; shebang blocks.\n\nOrg is al
 so (supposedly) not an executable file format.  However\, by\ncombining a 
 shebang block with a Org babel source block\, and eval\nlocal variables (e
 lvs) Org becomes a multi-language executable format.\n\nIn this talk we in
 troduce shebang blocks and elvs as a two part system\nthat transforms Org 
 files into executable documents that can run on any\nrecent version of Ema
 cs.\n\nThese ideas are implemented in\n<https://github.com/tgbugs/orgstrap
 /blob/master/README.org> and\n<https://github.com/tgbugs/orgstrap/blob/mas
 ter/shebang.org>\, and\norgstrap.el is available as a package on MELPA and
  can be installed\nvia M-x install-package orgstrap.\n\nThe talk will open
  with a demo of how to create an executable Org file\nusing the orgstrap m
 achinery.\n\nWe then discuss security considerations\, and show example us
 e cases.\n\nFinally the talk will cover the details and development of the
 \nportable shebang block for Org mode that works on a wide variety of\nsys
 tems and shells\, and on the development of a formal specification\nand a 
 reference implementation for using Org source blocks to\ntransform Org fil
 es from plain text documents with a bit of markup\ninto self describing co
 mputational documents\, or interactive\napplications.\n\n\n\n# Outline\n\n
 -   5-10 minutes:\n\nA demo of adding the orgstrap block and elvs\,\naddin
 g a shebang block\, and then running an org file.
END:VEVENT
BEGIN:VEVENT
SUMMARY:The use of Org mode syntax outside of GNU/Emacs
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-org-outside
URL:https://emacsconf.org/2021/talks/org-outside
DTSTART;TZID=America/Toronto:20211127T135400
DTEND;TZID=America/Toronto:20211127T140400
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/org-outside\n# The use of Org mode syntax outside of G
 NU/Emacs\nKarl Voit\n\nWith the rising interest in Org mode\, the GNU/Emac
 s community gained\nmuch momentum in the last decade. Being a nicely desig
 ned lightweight\nmarkup language\, Org mode does not only benefit users of
  GNU/Emacs.\nThere are many tools and services supporting Org mode syntax 
 documents\nthat do have no direct connection to GNU/Emacs. I would like to
 \nelaborate on the advantages on using Org mode syntax for arbitrary\ntext
  outside of GNU/Emacs for better typing usability and\ncollaboration tasks
 .\n\n\n\n# Outline\n\n-   5-10 minutes: (brief description/outline)\n\nThi
 s can only be a short teaser for the use of Org mode syntax without\nmuch 
 comparison to other lightweight markup languages. For this\naudience\, I d
 o think that this would be too short because most\nattendees might already
  have heard the rumors that Org mode is great\nor they have adapted Org mo
 de in their workflows already.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Using Org-mode to teach programming
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-teach
URL:https://emacsconf.org/2021/talks/teach
DTSTART;TZID=America/Toronto:20211127T140700
DTEND;TZID=America/Toronto:20211127T142700
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/teach\n# Using Org-mode to teach programming\nDaniel G
 erman\n\nIn this presentation I will explain how to use org-mode effective
 ly to\nprepare teaching materials\, and how to present them.\n\nFor the la
 st 5 years I have been using org-mode to teach programming\nin different l
 anguages: C++\, SQL\, Ruby\, Python\, SML\nand Scheme. Org-mode has three 
 key advantages:\n\n1.  it supports most programming languages with a commo
 n interface\,\n2.  it is an interactive medium for delivering teaching mat
 erials\; and\n3.  it is an always-up-to-date format that does not need to 
 be exported in order to be published.\n\nI explain how I use org-mode in m
 y courses and how I combine org-mode\nnotes other tools such as github org
 -mode to get\nalways up-to-date teaching materials that one can use for bo
 th\nteaching and studying (see\n<https://github.com/dmgerman/csc116ModernC
 plusplus/blob/master/lectures/l-01-1-intro/01_1_intro.org>\nfor an example
 ).\n\nFinally\, I will discuss some important aspects to consider when usi
 ng\norg-mode for this purpose.\n\n\n\n# Outline\n\n20 minutes:\n\n-   Intr
 oduction\n-   Quick demonstration\n-   Workflow\n-   Emacs configuration\n
 -   Important considerations\n-   How to get started\n\nOh\, I made a smal
 l mistake. I meant to propose a 40 minutes presentation.\nBut I can give a
  quicker 20 minutes too.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Managing a research workflow (bibliographies\, note-taking\, and ar
 Xiv)
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-research
URL:https://emacsconf.org/2021/talks/research
DTSTART;TZID=America/Toronto:20211127T143200
DTEND;TZID=America/Toronto:20211127T143700
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/research\n# Managing a research workflow (bibliographi
 es\, note-taking\, and arXiv)\nAhmed Khaled\n\nResearchers and knowledge w
 orkers have to read and discover new papers\,\nask questions about what th
 ey read\, write notes and scratchwork\, and store\nmuch of this informatio
 n for use in writing papers and/or code. Emacs allows\nus to do all of thi
 s (and more) using simple text interfaces that integrate\nwell together. I
 n this talk I will talk about the following:\n\na. Using elfeed and elfeed
 -score to read new papers from arXiv.\nb. Using org-ref to import arXiv pa
 pers of interest into a local\nbibliography.\nc. Using Emacs hooks with bi
 ber and rebiber in order to keep the local\n   bibliography clean and up-t
 o-date with conference versions of papers.\nd. Using org-roam and org-roam
 -bibtex to take linked\, searchable notes in\norg on research papers.\n\nT
 his text-based workflow allows for keeping everything accessible under\nve
 rsion\ncontrol and avoids the platform lock-in of binary formats (e.g. Men
 deley). I\nwill share my Doom Emacs configuration for this workflow\, but 
 it is not\nlimited\nto Doom.\n\n\n\n# Outline\n\n-   5-10 minutes: I will 
 demo the packages I use in 5 minutes.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Babel for academics
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-babel
URL:https://emacsconf.org/2021/talks/babel
DTSTART;TZID=America/Toronto:20211127T144100
DTEND;TZID=America/Toronto:20211127T145100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/babel\n# Babel for academics\nAsilata Bapat\n\nPlain o
 rg-mode is already an extremely powerful and\ncustomisable tool for task a
 nd time management\, note-taking\, calendar\nand agenda management\, and m
 uch more. Babel takes org a step further\nby letting you write\, evaluate\
 , and export code in different languages\nfrom within a single file. In th
 is talk\, I will highlight some\nfeatures of babel that I find exciting an
 d extremely useful\,\nparticularly for an academic workflow.\n\nGetting st
 arted with babel can be intimidating\, but it's hard to stop\nusing it onc
 e you start. As an academic\, I typically don't manage\nlarge coding proje
 cts. My primary purpose is writing lecture notes\,\nassignments\, and pape
 rs\, and managing related admin. Typically\, I want\nto try and automate t
 he boring portions of my workflow without extra\noverhead. I also tend to 
 find various tasks easier in some programming\nlanguages and harder in oth
 ers\, and prefer to mix and match languages\nas the task dictates. Babel m
 akes this process seamless.\n\nA basic use case is writing a document in o
 rg-mode and exporting it to\nLaTeX or HTML. Org-mode even lets you write m
 ultiple documents in a\nsingle org file\, which can be convenient. Babel l
 ets you add all sorts\nof enhancements to the same file. For example\, sup
 pose we have a\nsingle org document with all the problem sets for a course
 . Within\nthis single file\, we could now:\n\n-   draw pictures in ditaa\,
  graphviz\, or python instead of LaTeX\,\n-   use python to do complex cal
 culations and then output the result as LaTeX\,\n-   define skeletons to q
 uickly draw up assignment templates\,\n-   toggle exporting of assignments
  with or without solutions based on tags\,\n-   locally change export sett
 ings or run a post-export hook\,\n-   automatically export to LaTeX after 
 saving\,\n-   tangle code blocks from some or all of the languages to exte
 rnal files.\n\nI will try to showcase features of babel that academics cou
 ld find\nhelpful\, by presenting some ways in which I have tried to use ba
 bel. I\nwould also like to be inspired by other people's babel workflows!\
 n\n\n\n# Outline\n\n-   5-10 minutes: (brief description/outline)\n\nFor a
  5-10 minute presentation I will give a brief intro and present one or two
  example files that heavily use babel. I will use these\nexamples to highl
 ight some of the features mentioned in the abstract.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Reproducible molecular graphics with Org-mode
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-molecular
URL:https://emacsconf.org/2021/talks/molecular
DTSTART;TZID=America/Toronto:20211127T145300
DTEND;TZID=America/Toronto:20211127T150300
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/molecular\n# Reproducible molecular graphics with Org-
 mode\nBlaine Mooers\n\nResearch papers in structural biology should includ
 e the code used to make\nthe images of molecules in the article in the sup
 plemental materials.\nSome structural bioinformaticists have started to in
 clude\ntheir computer code in the supplemental materials to allow readers\
 nto reproduce their analyses. However\, authors of papers reporting new\nm
 olecular structures often overlook the inclusion of the code that makes\nt
 he images of the molecules reported in their articles. Nonetheless\,\nthis
  aspect of reproducible research needs to become the standard practice\nto
  improve the rigor of the science.\n\nIn a literate programming document\,
  the author interleaves between blocks\nof prose the code that makes the i
 mages of molecules. The document allows\nthe reader to reproduce the image
 s in the manuscript by running the code.\nThe reader can also explore the 
 effect of altering the parameters in the\ncode. Org files are one alternat
 ive for making such literate programming\ndocuments.\n\nWe developed a yas
 nippet snippet library called orgpymolpysnips for\nstructural biologists (
 <https://github.com/MooersLab/orgpymolpysnips>).\nThis library facilitates
  the assembly of literate programming documents\nwith molecular images mad
 e by PyMOL. PyMOL is the most popular\nmolecular graphics program for crea
 ting images for publication\; it has\nover 100\,000 users\, which is a lot
  of users in molecular biology. PyMOL\nhas been used to make many of the i
 mages of biological molecules found\non the covers of many Cell\, Nature\,
  and Science issues.\n\nWe used the `jupyter' language in org-babel to sen
 d commands from\ncode blocks in Org files to PyMOL's Python API. PyMOL ret
 urns the\nmolecular image to the output block below the code block. An Ema
 cs\nuser can convert the Org file into a PDF\, `tangle' the code blocks\ni
 nto a script file\, and submit these for non-Emacs users. We describe\nthe
  content of the library and provide examples of the running PyMOL\nfrom Or
 g-mode documents.\n\n\n# Outline\n\n-   5-10 minutes: (brief description/o
 utline)\n    -   Title slide\n    -   Structural Biolog Workflow in the Mo
 oers Lab\n    -   Cover images made with PyMOL\n\n    -   Why develop a sn
 ippet library for your field?\n    -   PyMOL in Org: kernel specification\
 n    -   Creating a conda env and installing PyMOL\n    -   Example code b
 lock in Org to make DSSR block model of tRNA\n    -   Resulting image\n   
  -   Summary\n    -   Acknowledgements
END:VEVENT
BEGIN:VEVENT
SUMMARY:Budgeting\, Project Monitoring and Invoicing with Org Mode
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-project
URL:https://emacsconf.org/2021/talks/project
DTSTART;TZID=America/Toronto:20211127T150600
DTEND;TZID=America/Toronto:20211127T151600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/project\n# Budgeting\, Project Monitoring and Invoicin
 g with Org Mode\nAdolfo Villafiorita\n\nIn this talk I will present how we
  use Org Mode at Shair.Tech for\nbudgeting\, project monitoring\, and invo
 icing.\n\nWe are a small company and we are still tuning and improving the
 \nprocess\, but with a bit of Emacs Lisp\, the functions Org Mode\nprovide
 s\, and reading here and there what other users do\, we\nimplemented an ef
 fective workflow we have been using for nearly a\nyear\, now\, and with wh
 ich we are very happy. Talk duration:\n\n&#x2013\;> 20 minutes seems to be
  right (15 talk + questions)\n&#x2013\;> I can also make in 10 minutes\, b
 y focusing the talk on\n    budgeting (or monitoring)
END:VEVENT
BEGIN:VEVENT
SUMMARY:Find Your (In)voice: Emacs for Invoicing
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-invoice
URL:https://emacsconf.org/2021/talks/invoice
DTSTART;TZID=America/Toronto:20211127T151900
DTEND;TZID=America/Toronto:20211127T152900
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/invoice\n# Find Your (In)voice: Emacs for Invoicing\nB
 ala Ramadurai\n\nYe Freelance warriors\, please lend me your I/O devices f
 or 5 minutes.\n\nYour time is your money! Do you find it a pain to generat
 e an invoice\,\nrecord the details into your accounting software and keep 
 track of\ntaxes and payments? You are not alone\, I found the whole invoic
 e\nthingy to be extremely painful.\n\nBut worry not\, Emacs comes to our r
 escue.\n\nMy talk will give you a basic intro on how to use org mode\, som
 e embedded python code and file jugglery to generate stylistic and profess
 ional invoices.\n\nWhat you will learn during the session:\n\n-   How to t
 rack your freelance time using orgmode\n-   How to create the basic infras
 tructure for invoice generation\n-   How to generate the invoice\n-   How 
 to manage multiple clients\n-   How to enter the finance details into your
  accounting software\n-   How to track invoice payments\n\nWe will use the
  following packages:\n\n-   Emacs+orgmode (duh?)\n-   yasnippet\n-   pytho
 n layer (I use spacemacs\, so whatever is the equivalent in your config)\n
 -   Some unnecessary Shakespearean references
END:VEVENT
BEGIN:VEVENT
SUMMARY:Productivity Dashboards with Emacs and Kindle
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-dashboard
URL:https://emacsconf.org/2021/talks/dashboard
DTSTART;TZID=America/Toronto:20211127T153200
DTEND;TZID=America/Toronto:20211127T154200
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/dashboard\n# Productivity Dashboards with Emacs and Ki
 ndle\nMehmet Tekman\n\nSince 2008\, Amazon have released a new Kindle devi
 ce every year\,\nsupplanting each generation with a newer model that boast
 s highly\npromoted incremental features which greatly devalues the price o
 f\ntheir older models. These forgotten models are sold on Ebay and\nother 
 secondhand websites at highly discount prices by owners who\ndo not see th
 e true potential of these devices: Kindles are\nexcellent high contrast lo
 w-refresh display rate E-Ink devices\,\nwith Wifi capability\, that run em
 bedded Linux in the\nbackground. Depending on the model\, an idle Kindle c
 an last weeks\nbefore needing a recharge. This makes them ideal as passive
  image\ndevices that can be configured easily using a few shell\nscripts. 
 Indeed\, efforts have been made in dedicated hacker forums\nto expose the 
 Linux filesystem and to enable features such as\ncustom screensavers\, SSH
  networking\, and more. By exploiting these\nfeatures\, and by carefully d
 isabling the software/bloatware that\ncomes with the device\, these Kindle
 s have found new life as online\ndashboard devices which can fetch and dis
 play information from the\ninternet at timely intervals.\n\nHere we descri
 be a tool to control multiple Kindle devices with a\nsingle org-mode/shell
 -based tool\, built initially to periodically\nserve updated Emacs Org-Age
 nda views\, but later expanded to produce\nonline local weather reports an
 d work calendar\, Emacs calendars\n(calfw\, org-gcal)\, daily dietary info
 rmation (org-calories)\,\nOrg-Mode sparse TODO trees\, miscellaneous image
  and text content\n(via imagemagick)\, small messages\, and much more.\n\n
 In this talk\, we show how to configure multiple Kindles with any\ndesired
  custom content\, following any daily/weekly schedule\, all\neasily manage
 d from Emacs within a single Org-Mode file.\n\n\n\n# Outline\n\n-   5-10 m
 inutes:\n\n    1-3 mins\n          Talk about repurposing Kindles:\n\n    
 -   Cheap second-hand wifi device\, hackable\n    -   Low-powered\, long b
 attery life\, low refresh rate &#x2013\; perfect\n        for a dashboard\
 n        -   Timely updated Org-Mode Agendas anyone?\n    -   Reference to
  inspired projects (kindle-dashboard)\n\n    2-3 mins\n          Generate 
 content\n\n    -   A static text+picture image easily generated with image
 magick\n        wrapper\n    -   An image of a sparse tree of org-mode TOD
 O file\n    -   An image of another emacs view (e.g. Calfw\, or org-calori
 es)\n    -   Show post-processing for optimizing image for Kindles\n\n    
 1-2 mins\n          Configuration in a single org-mode file\n\n    -   Def
 ining Machines\n    -   Defining Commands to generate content\n    -   Def
 ining Schedules to run Commands on multiple Machines at\n        specific 
 points in the day\n\n    1-2 mins\n          Export and Run:\n\n    -   Sh
 ow exported shell configs and generated cronjobs\n    -   Witness multiple
  Kindles producing desired content with wakeup\n        timers
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs with Nyxt: extend your editor with the power of a Lisp browse
 r
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-nyxt
URL:https://emacsconf.org/2021/talks/nyxt
DTSTART;TZID=America/Toronto:20211127T154500
DTEND;TZID=America/Toronto:20211127T155500
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/nyxt\n# Emacs with Nyxt: extend your editor with the p
 ower of a Lisp browser\nAndrea\n\nIn 2021 browsers are essential if you us
 e a computer. Even if Emacs\nusers love text as a format\, they may need t
 o shop and video call from\ntime to time (even more so in a pandemic!). So
 me of us modified their\nbrowsers to at least have the same keybindings as
  our editor of\nchoice. What if I told you there is an Emacsy browser in t
 he making?\nWhat if you could "ace-jump" within a web page? What if you co
 uld run\na REPL to extend your browser while browsing? What if you could r
 ecord\nmacros?! The browser exists: its name is Nyxt!\n\nIn this talk I wi
 ll share why it has great potential\, how you can\nintegrate it with Emacs
 \, and how you can migrate your Emacs mastery to\nthe web!\n\nIf you were 
 wishing for a Lispy and Emacsy browser\, you should not\nmiss this talk!\n
 \nYou can learn more about this at: <https://github.com/ag91/emacs-with-ny
 xt>\n\n\n\n# Outline\n\n-   5-10 minutes: quick demo of running Nyxt from 
 Emacs and a little explanation of the code necessary for integration
END:VEVENT
BEGIN:VEVENT
SUMMARY:On the design of text editors
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-design
URL:https://emacsconf.org/2021/talks/design
DTSTART;TZID=America/Toronto:20211127T155800
DTEND;TZID=America/Toronto:20211127T160800
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/design\n# On the design of text editors\nNicolas P. Ro
 ugier\n\nText editors are written by and for developers. They  come\nwith 
 a large set of default and implicit choices in terms of layout\,\ntypograp
 hy\, colorization and interaction that hardly change from one\neditor to t
 he other. It is not clear if these implicit choices derive\nfrom the ignor
 ance of alternatives or if they derive from developers'\nhabits\, reproduc
 ing what they are used to. Durint this talk\, I will\ncharacterize these i
 mplicit choices and illustrate what are some\nalternatives using GNU Emacs
 .\n\n\n\n# Outline\n\n\n-   10 minutes alternative\n\nMostly a live demo o
 f my environment with pointers to the different\npackages
END:VEVENT
BEGIN:VEVENT
SUMMARY:How Emacs made me appreciate software freedom
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-freedom
URL:https://emacsconf.org/2021/talks/freedom
DTSTART;TZID=America/Toronto:20211127T161200
DTEND;TZID=America/Toronto:20211127T165200
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/freedom\n# How Emacs made me appreciate software freed
 om\nProtesilaos Stavrou\n\nThe theme will be "how Emacs empowered my softw
 are freedom".\nI will outline the key moments in my transition to a GNU/Li
 nux operating\nsystem and mark those which eventually contributed towards 
 me becoming\nan Emacs user\, maintainer of a&#x2014\;dare I say&#x2014\;po
 pular package\, and\ncontributor to upstream Emacs (among others).  By all
 uding to personal\nexperiences\, I will draw generalisable insights and co
 nnect them to what\nI believe are irreducible qualities of Emacs qua softw
 are and Emacs as a\ncommunity of like-minded people.  The talk will be the
 oretical in\nnature: there won't be any code-related demonstration nor tec
 hnical\nreferences that only people with a background in computer science 
 would\nlikely recognise.  Personal anecdotes shall be tangential to the po
 int\nand considered as ancillary to the thesis of what Emacs represents fr
 om\nthe standpoint of software freedom and user empowerment.  The\npresent
 ation is intended for a general audience that is interested in\nGNU softwa
 re in general and Emacs in particular.  My formal educational\nbackground 
 as a social scientist (i.e. not a programmer) and later as a\nphilosopher 
 informs my approach to this topic.\n\nThe presentation shall be 40 minutes
  long.  Its text will be in essay\nform and shall be supplied as complemen
 tary material to the video.  The\nnotation will be in Org mode.  I cannot 
 provide an outline in advance\,\nas it will most likely not be consistent 
 with the actual presentation.\nIf\, however\, this is absolutely required 
 for administrative purposes I\nshall furnish one regardless with the provi
 so that I am in no way bound\nby it and thus reserve the right to modify i
 t ahead of the main event.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Closing remarks day 1
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-day1-close
URL:https://emacsconf.org/2021/talks/day1-close
DTSTART;TZID=America/Toronto:20211127T165200
DTEND;TZID=America/Toronto:20211127T165700
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/day1-close\n# Closing remarks day 1
END:VEVENT
BEGIN:VEVENT
SUMMARY:Opening remarks day 2
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-day2-open
URL:https://emacsconf.org/2021/talks/day2-open
DTSTART;TZID=America/Toronto:20211128T090000
DTEND;TZID=America/Toronto:20211128T090500
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/day2-open\n# Opening remarks day 2
END:VEVENT
BEGIN:VEVENT
SUMMARY:How to write faster Emacs Lisp
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-faster
URL:https://emacsconf.org/2021/talks/faster
DTSTART;TZID=America/Toronto:20211128T090500
DTEND;TZID=America/Toronto:20211128T092500
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/faster\n# How to write faster Emacs Lisp\nDmitry Gutov
 \n\n-   Before optimizing\, benchmark first.\n-   Different benchmarking a
 pproaches.\n-   Live evaluation\, step-debugging\, measuring from a debugg
 er breakpoint.\n-   How to determine if a function is expensive. How to pi
 ck one from\n    competing alternatives (cl-lib\, seq\, dash\, lean core).
 \n-   Print-benchmarking.\n-   Byte-compiled code can give a very differen
 t picture\, changing where\n    the bottleneck is. How to quickly load a b
 yte-compiled version.\n-   Steps taken to speed up the Xref package recent
 ly.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Tree-edit: Structural editing for Java\, Python\, C\, and beyond!
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-structural
URL:https://emacsconf.org/2021/talks/structural
DTSTART;TZID=America/Toronto:20211128T093000
DTEND;TZID=America/Toronto:20211128T094000
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/structural\n# Tree-edit: Structural editing for Java\,
  Python\, C\, and beyond!\nEthan Leba\n\nIn this talk\, I'll discuss a vis
 ion for how writing code could be\, where the\nediting operations map dire
 ctly to the primitives of the language itself -- and\nmy humble attempt of
  implementing this vision. _tree-edit_ seeks to provides a\nstructural edi
 ting plugin supporting conceivably any language with a tree-sitter\nparser
 .\n\n**Structural editing does not have to be relegated to lisps or niche 
 DSLs.**\n\nI liken the state of code editing today to writing assembly. Th
 e reason why\npeople like Python more than assembly is that for most purpo
 ses\, the building\nblocks of the language are mismatched with our thought
  process. We don't think\nin terms of registers and addresses\, we think i
 n terms of variables\, functions\,\netc. So when we write and edit code\, 
 why do we edit in terms of deleting\,\ninserting\, replacing characters &#
 x2013\; not wrapping\, inserting\, raising\,\ndeleting expressions and sta
 tements?\n\nI'll also discuss the implementation of tree-edit\, which uses
  a novel\ncombination of the fantastic\n[tree-sitter](https://github.com/e
 macs-tree-sitter/elisp-tree-sitter) parser\nwith an embedded logic program
 ming DSL ([miniKanren](http://minikanren.org/)\,\nusing elisp port [reazon
 ](https://github.com/nickdrozd/reazon)) to power it's\nsyntax tree generat
 ion.\n\nCheck out the GitHub repo [here](https://github.com/ethan-leba/tre
 e-edit)!\n\n# Outline\n\n-   Discuss motivation                          (
 Why should I care?)\n-   Demonstrate tree-edit                       (Live
 -coding with tree-edit)\n-   Demonstrate tree-edit syntax tree generator (
 Elevator pitch on miniKanren)
END:VEVENT
BEGIN:VEVENT
SUMMARY:Self-Describing Smart DSL's: The Next Magits
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-dsl
URL:https://emacsconf.org/2021/talks/dsl
DTSTART;TZID=America/Toronto:20211128T094300
DTEND;TZID=America/Toronto:20211128T100300
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/dsl\n# Self-Describing Smart DSL's: The Next Magits\nP
 sionic\n\nWhen we begin programming\, the promise is to automate away repe
 titive\ntasks in life.  As those program's capability grows\, we begin to 
 need\nconfiguration UI's.  We can start with a CLI\, but as any CLI grows\
 , we\nrun into the following issues:\n\n-   As options pile up\, the intui
 tion of simplicity is lost in helps and\nmanpages\n\n-   Stateless operati
 on has no idea what to do next and loses terseness\n- Frequent dispatch of
  commands to interrogate state required for the\noperator to decide what a
 ction to perform\n\n-   Composition compounds with all of these issues\n\n
 Magit has the UI trifecta of being terse\, intuitive\, and intelligent.\nM
 agit's UI input library\, Transient\, is a standalone package for\ndevelop
 ing more killer UI's\, and not just for CLI applications\, but\nalso for s
 erver applications\, Emacs applications\, and Emacs itself.\n\nWhile Trans
 ient's potential is to create the most highly productive\nUI's short of th
 ought control\, going beyond simple command dispatchers\nrequires a deeper
  dive.  When we think like constructing a DSL for the\ntask and using tran
 sient to input that DSL\, we get an intelligent\,\nself-describing modal p
 rogramming system.\n\n\n# Outline\n\n-  Updates to Transient documentation
  and demos of API examples\n-  Wrapping a custom CLI tool in Transient
END:VEVENT
BEGIN:VEVENT
SUMMARY:"Yak-shaving to a UI framework" (/"Help! I accidentally yak-shaved 
 my way to writing a UI framework because overlays were slow")
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-ui
URL:https://emacsconf.org/2021/talks/ui
DTSTART;TZID=America/Toronto:20211128T100600
DTEND;TZID=America/Toronto:20211128T101600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/ui\n# "Yak-shaving to a UI framework" (/"Help! I accid
 entally yak-shaved my way to writing a UI framework because overlays were 
 slow")\nErik Anderson\n\nTui.el is a textual User Interface (UI) framework
  for Emacs Lisp\nmodeled after the popular JavaScript 'React' framework.  
 This package\nimplements React Component API's with the goal of simplifyin
 g\ndevelopment of interactive UI's for all Emacs users- regardless of\nthe
 ir prior experience with React or web programming.  Components\nprovide a 
 useful functional unit for constructing complex interfaces\ndeclaratively 
 and also eliminate much of the burden associated with\nupdating textual co
 ntent as application state changes.  This talk will\ncover use of the tui.
 el API and its operation in a textual environment\nby implementing some ba
 sic UI's.\n\n\n\n# Outline\n\n-   5-10 minutes:\n    -   Problem space: UI
  implementation complexity.\n    -   API introduction: Displaying content\
 , Components.\n    -   Visual taste of dashboards and applications built w
 ith tui.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Extending Emacs in Rust with Dynamic Modules
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-rust
URL:https://emacsconf.org/2021/talks/rust
DTSTART;TZID=America/Toronto:20211128T101900
DTEND;TZID=America/Toronto:20211128T103900
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/rust\n# Extending Emacs in Rust with Dynamic Modules\n
 Tuấn-Anh Nguyễn\n\nDynamic module support has been available since Emacs 2
 5. It can be\nused to extend Emacs with native libraries\, for performance
 \,\nOS-specific features\, or other functionalities that would take a lot\
 nof time to re-implement in Lisp. The officially supported language is\nC\
 , which is tedious and error-prone to use. This talk discusses a\n**safe**
  alternative that is also a lot **more convenient**: writing these\ndynami
 c modules in Rust.\n\n\n\n# Outline\n\n-  Walking through creating **a sim
 ple dynamic module** in\n    Rust\, including setting up CI.\n-  Going thr
 ough and explaining the **available APIs**.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs Application Framework: A 2021 Update
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-eaf
URL:https://emacsconf.org/2021/talks/eaf
DTSTART;TZID=America/Toronto:20211128T104400
DTEND;TZID=America/Toronto:20211128T105400
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/eaf\n# Emacs Application Framework: A 2021 Update\nMat
 thew Zeng\n\nEmacs Application Framework (EAF) is a customizable and exten
 sible GUI\napplication framework that extends Emacs graphical capabilities
  using\nPyQt5. There are many new but important updates since EmacsConf202
 0\nlast year\, this talk will briefly go over them.\n\n\n\n# Outline\n\n- 
   5-10 minutes: (brief description/outline)
END:VEVENT
BEGIN:VEVENT
SUMMARY:Extending the "model" of Emacs to other applications
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-model
URL:https://emacsconf.org/2021/talks/model
DTSTART;TZID=America/Toronto:20211128T105800
DTEND;TZID=America/Toronto:20211128T110800
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/model\n# Extending the "model" of Emacs to other appli
 cations\nLaszlo Krajnikovszkij\n\nEmacs is a great operating environment i
 n a sense that it provides consistency\nacross different tools and applica
 tions within the Emacs ecosystem\, as well as\nexternal apps that can be i
 ntegrated into it. It is also the most truly\nmalleable environment\, each
  element of which can be adjusted or extended\,\ntherefore providing the u
 ser with more power and freedom in personal computing.\nEmacs definitely c
 an be considered one of greatest software products in\nexistence.\n\nAs a 
 non-programmer\, having had the chance to stumble upon Emacs a couple of\n
 years ago\, the only regret to have is that it didn't happen earlier. The 
 definite\nkiller feature of Emacs - Org-mode\, is what draws many of the l
 ess technical\nfolks to join the party and gradually start to use Emacs fo
 r writing documents\,\nwhether personal or work related\, manage tasks\, e
 mails and potentially everything\nelse. The learning curve and difference 
 in approach\, however\, leaves some\npotential users too scared of the arc
 ane interface even with all it's quirks and\nfeatures because it requires 
 at least some technical skills to understand and\nuse properly\, and does 
 not have an easy way to connect with external tools that\nmost people are 
 forced to use for work.\n\nThis talk proposes some ideas about how the mod
 el of Emacs\, it's focus on\nconsistency\, extensibility\, as well as it's
  powerful interaction model can be\ncarried over to make modern interfaces
 \, whether desktop or web applications\,\nthat would be designed with a go
 al of reflecting the spirit of Emacs in terms of\nthe aforementioned featu
 res it possesses\, and therefore enhance the capabilities\nof the Emacs\, 
 while at the same time utilizing it as a backend for\ntext-processing and 
 editing to a large extent. It would be really great to have\na personal we
 b-interface for using modern task management tools\, chats\, emails\nand s
 uch\, but from a UI defined by the user. The goal is to use it on a deskto
 p\nor mobile\, locally or self-hosted on a server\, with support for touch
  and\ngesture-based workflows\, while preserving the Emacs philosophy and 
 allowing to\nseamlessly switch between Emacs and its web extension\n\nThe 
 proposed solution is to integrate more of the modern tools with Emacs\,\nu
 tilize Org-mode as a way to define application-specific parameters for the
 se\ntools through Org properties\, and then utilize these parameters for m
 aking a\nmodern local frontend that would enhance Emacs UI while allowing 
 to use external\ntools in a more personal and freedom respecting way (maki
 ng the originals\nobsolete over time). The talk serves the purpose of invi
 ting community members to\na discussion about how Emacs can become more mo
 dern\, more approachable by people\nwho don't possess the neccessarry tech
 nical skills to adjust it themselves\, but\nare keen to learn it\, and pot
 entially how to attract more users to greater\nproductivity\, computer lit
 eracy and the ideas of free software.\n\n\n\n# Outline\n\n-   5-10 minutes
 \n    -   Introduction\n    -   Issues with most modern tools for work\n  
   -   Issues with Emacs as a tool for work\n    -   In search for a hybrid
  approach\n    -   User controlled web-apps\n    -   Opinions encouraged\n
     -   Contacts
END:VEVENT
BEGIN:VEVENT
SUMMARY:Don't write that package! or: How I learned to stop worrying and lo
 ve emacs-devel
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-devel
URL:https://emacsconf.org/2021/talks/devel
DTSTART;TZID=America/Toronto:20211128T111100
DTEND;TZID=America/Toronto:20211128T113100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/devel\n# Don't write that package! or: How I learned t
 o stop worrying and love emacs-devel\nStefan Kangas\n\nEmacs' greatest str
 ength is also its greatest weakness: it is **too** hackable.\n\nWe have a 
 great community that experiment with new features that are still\nlacking 
 in Emacs core.  They write up a package and develop the living daylights\n
 out of it\, until it is basically amazing.  (I'm looking at you Magit.)\n\
 nThere are other examples such as helpful.el - great package\, but why are
  those\nfeatures not in core?  What about projectile?  And so on.\n\nCore 
 demands copyright assignments (CLA).  This is a fact of life.  While I\nmo
 stly agree with the people saying it is not helful\, they are there to pro
 tect\nEmacs from copyright issues in the future.  So my suggestion here is
  simple:\njust **sign the papers**.  It is just a formality\, and you shou
 ld only need to do\nit once.\n\nI suggest that any ambitious feature that 
 we **might** want to see shipped in the\ndefault Emacs distribution should
  by default go to GNU ELPA.  You don't need to\ndo this\, of course\, and 
 I respect your decision\, but I urge you to do it.\n\nGNU ELPA does not ha
 ve an exceptionally high standard\, but we do try to give any\nnew package
  a proper code review.\n\nMELPA is excellent.  We love MELPA.  They don't 
 have a criterion for their\npackages that is important to the FSF\, which 
 is to not recommend non-free\nsoftware.  Therefore\, we could not recommen
 d it by default\, and had to build\nNonGNU ELPA.\n\nNonGNU ELPA will be us
 ed for packages that we don't have an assignment for but\nwould still like
  to distribute.  It should ideally only be for old packages\nwhere getting
  a CLA is impractical.\n\nIt is sometimes perceived as hard to contribute 
 to Emacs core.  This impression\nis largely wrong.  If I can do it\, you c
 an too.\n\nWe do have a problem in that our tools and methods (mailing lis
 ts\, the bug\ntracker) are out-dated.  This is largely correct.  We want t
 o migrate to\nsomething else\, and the best candidate is probably Sourcehu
 t.  Please volunteer\nto help!\n\nWe sometimes see people adding stuff to 
 their Init file to fix this or that\nannoyance\, or even bug.  The more am
 bitious would go on to package up such fixes\nin what I call "patch packag
 es". "Hey\, foo-mode doesn't have support for\n'bookmark-set'\, let's writ
 e a package!"  I am here to suggest that you submit a\npatch to Emacs inst
 ead.\n\nFixing an issue for one person is good\, and fixing it for more pe
 ople is even\nbetter.  Fixing it for everyone?  Priceless.\n\nemacs-devel 
 is not that scary\, nor is email.  We are really quite friendly and\neasy 
 going\, but the communication we prefer (for reasons of efficiency - the\n
 volume is very high) is often very brief and to the point.  We are trying 
 our\nbest at communicating\, but sometimes fail.\n\nAnd we need more contr
 ibutors.  We need a successful Emacs on this planet.\n\nSo should you real
 ly write a package\, or should YOU become a core contributor?\n\n\n\n# Out
 line\n\n- I will urge people to consider contributing to Emacs instead of\
 n  writing small packages\, and explain GNU ELPA\, MELPA\, CLA.\n- I will 
 go into greater detail about emacs-devel\, how it "works"\n  (e.g. is Emac
 s conservative without reason?)\, how to get things\n  done and the necess
 ary mindset.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Turbo Bindat
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-bindat
URL:https://emacsconf.org/2021/talks/bindat
DTSTART;TZID=America/Toronto:20211128T113600
DTEND;TZID=America/Toronto:20211128T115600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/bindat\n# Turbo Bindat\nStefan Monnier\n\n\n# Table of
  Contents\n\n\n\nBindat is an ELisp library to help manipulate binary data
 . This is a\nniche library that is used by packages such as Websocket\, EM
 MS\, and\ncpio-mode. Its implementation was repeatedly caught harassing ha
 pless\nkitten while at the same time providing poor service slowly. For\nE
 macs-28\, Bindat was rewritten so as to make it more efficient and\nflexib
 le while respecting the kitten. In this presentation I intent to\nshow how
  we saved those. Not recommended for birds.\n\n-   ~20 minutes:\n    5 min
 : Intro and presentation of Bindat\n    5 min: Showcase some of its proble
 ms\n    5 min: Present the new design\n    5 min: Examples of what can be 
 done with it
END:VEVENT
BEGIN:VEVENT
SUMMARY:Emacs Lisp native compiler\, current status and future developments
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-native
URL:https://emacsconf.org/2021/talks/native
DTSTART;TZID=America/Toronto:20211128T124000
DTEND;TZID=America/Toronto:20211128T132000
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/native\n# Emacs Lisp native compiler\, current status 
 and future developments\nAndrea Corallo\n\nEmacs Lisp (Elisp) is the Lisp 
 dialect used by the Emacs text editor\nfamily.  GNU Emacs is traditionally
  capable of executing Elisp code\neither interpreted or byte-interpreted a
 fter it has been compiled to\nbyte-code.\n\nIn this talk I'll discuss the 
 Emacs Lisp native compiler.  This feature\nrecently merged into the main E
 macs development line allow for\nautomatically compiling and executing Eli
 sp as native code.\n\nDuring the presentation I'll touch on:\n\n-   design
  goals\n-   compiler and runtime design and implementation\n-   performanc
 e implications\n-   upstream process\n-   area of improvements and future 
 developments\n\nFormat: 40 minutes
END:VEVENT
BEGIN:VEVENT
SUMMARY:Old McCarthy Had a Form
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-form
URL:https://emacsconf.org/2021/talks/form
DTSTART;TZID=America/Toronto:20211128T132700
DTEND;TZID=America/Toronto:20211128T133700
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/form\n# Old McCarthy Had a Form\nIan Eure\n\nMost prac
 tical languages are multi-paradigm\, offering several\nabstractions for th
 e programmer.  But did you know that Emacs Lisp\ncomes with a powerful sys
 tem for object-oriented programming? Join me\nfor a discussion of EIEIO\, 
 and learn how it can help you write more\nmodular\, flexible Emacs Lisp.\n
 \n\n\n# Outline\n\n-   5-10 minutes: (brief description/outline)\n    -   
 What is CLOS/EIEIO?\n    -   Why would I want OOP in Emacs Lisp?\n    -   
 How is the CLOS object model different from C++/Java/.NET?\n    -   Furthe
 r reading
END:VEVENT
BEGIN:VEVENT
SUMMARY:Test blocks
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-test
URL:https://emacsconf.org/2021/talks/test
DTSTART;TZID=America/Toronto:20211128T134100
DTEND;TZID=America/Toronto:20211128T134600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/test\n# Test blocks\nEduardo Ochs\n\nIn this presentat
 ion I will show an idea that feels completely obvious\nonce we see it\, bu
 t that only occured to me after after using Emacs\nand eev as my main inte
 rface to the computer for more than 20 years.\nTake any interpreted langua
 ge that supports multi-line comments\, and\nwhose interpreter can be run i
 n an Emacs buffer - for example Lua\,\nHaskell\, Python\, or Julia\; let's
  say just "Lua" from here on for\nsimplicity. So: suppose that we have a L
 ua script that we wrote\, that\nis called "foo.lua" and that defines lots 
 of functions and defines the\nclasses Bar and Bletch. We can put after the
  definition of the class\nBar a multi-line comment that contains an eepitc
 h block that when\nexecuted starts a Lua interpreter\, loads the script fo
 o.lua (by\nrunning 'dofile "foo.lua"')\, and then has several tests for th
 at class\nand its methods\; and we can put another block with tests like t
 hat\nafter the class Bletch\, and other blocks after some functions. Eepit
 ch\nallows sending these tests line by line to the Lua interpreter by\ntyp
 ing <f8\\> on each line that we want to send\, and this lets us create\nte
 sts that are very easy to understand even without writing comments\;\nthis
  gives us a very quick way to document code by executable tests\,\nthat is
  super-great for experimental code that is still going to\nchange a lot be
 fore running the risk of being read by other people.\n\nThese multi-line c
 omments with eepitch blocks that run an interpreter\nand make it load the 
 current file are called "test blocks". The\ncommand \\`M-x eeit' inserts a
  test block at point\, using the major mode\nto decide the right syntax to
  use for the multi-line comments and for\nthe "dofile". We can configure t
 he syntax of the test blocks for the\ncurrent major mode by running \\`M-x
  find-eeit-links'\; this can also be\nused to add support for test blocks 
 to more languages (or\, more\nprecisely: to more major modes).\n\nEduardo 
 Ochs <http://angg.twu.net/emacsconf2021.html>
END:VEVENT
BEGIN:VEVENT
SUMMARY:Let's talk about bug trackers
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-bug
URL:https://emacsconf.org/2021/talks/bug
DTSTART;TZID=America/Toronto:20211128T134900
DTEND;TZID=America/Toronto:20211128T140900
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/bug\n# Let's talk about bug trackers\nBastien Guerry\n
 \nFor 17 years\, the Org developers didn't use a bug tracker\,\nshamelessl
 y failing the Joel Spolsky test.  Why was it "good enough"?\nWhy was it wr
 ong?  Why did we move to Woof!?  Why Woof! is not a bug\ntracker?\n\n-   2
 0 minutes
END:VEVENT
BEGIN:VEVENT
SUMMARY:Perso-Arabic Input Methods And Making More Emacs Apps BIDI Aware
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-bidi
URL:https://emacsconf.org/2021/talks/bidi
DTSTART;TZID=America/Toronto:20211128T141600
DTEND;TZID=America/Toronto:20211128T143600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/bidi\n# Perso-Arabic Input Methods And Making More Ema
 cs Apps BIDI Aware\nMohsen BANAN\n\n\n# Table of Contents\n\n\n\nStarting 
 with Emacs 24\, full native bidi\n(bidirectional) support became available
 .  For\nmany years prior to that Unicode support was\navailable and by aro
 und year 2000\, reasonable\nopen-source shaping libraries were also availa
 ble.\n\nWith these in place at around 2012\, I developed\ntwo Persian inpu
 t methods for emacs. These input\nmethods or variations of them can also b
 e used\nArabic and other persoarabic scripts.\n\nWith all of these in plac
 e\, Emacs has now become\nthe ne plus ultra Halaal/Convivial usage\nenviro
 nment for persoarabic users.\n\nSince emacs comes loaded with everything (
 Gnus\nfor email\, Bbdb for address books\, XeLaTeX modes\nfor typesetting\
 , org-mode for organization\, spell\ncheckers\, completions\, calendar\, e
 tc.)\, all basic\ncomputing and communication needs of persoarabic\nusers 
 can be addressed in one place and\ncohesively.\n\nIn this talk I will demo
 nstrate what a wonderful\nenvironment that can be.\n\n-   40 minutes: (bri
 ef description/outline)\n\n    My talk will be in two parts.\n\n    In Par
 t 1\, I cover persian input methods. With an\n    emphasis on &lsquo \;Ban
 an Multi-Character (Reverse)\n    Transliteration Persian Input Method&rsq
 uo\;. The\n    software is part of base emacs distribution.\n    Full docu
 mentation is available at:\n           Persian Input Methods\n           F
 or Emacs And More Broadly Speaking\n           شیوه‌هایِ درج به فارسی‌\n  
          <http://mohsen.1.banan.byname.net/PLPC/120036>\n\n    In Part 2\,
  I will cover the ramifications of bidi\n    on existing emacs application
 s\, including:\n\n    -   Gnus:\n        -   Persoarabic rich email sendin
 g in HTML.\n        -   Ramifications of bidi on from\, to and\n          
   subject lines.\n\n    -   Bbdb: Ramifications of bidi on display and\n  
       completion.\n\n    -   Calendar:\n        -   Ramifications of bidi 
 on display.\n        -   Use of persian text for Persian (solar) calendar.
 \n        -   Use of arabic text for Muslem (lunar)  calendar.\n\n    -   
 AUCTeX: Persian typesetting with XeLaTeX
END:VEVENT
BEGIN:VEVENT
SUMMARY:Moldable Emacs\, a step towards sustainable software
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-mold
URL:https://emacsconf.org/2021/talks/mold
DTSTART;TZID=America/Toronto:20211128T144100
DTEND;TZID=America/Toronto:20211128T145100
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/mold\n# Moldable Emacs\, a step towards sustainable so
 ftware\nAndrea\n\nWe could learn about things better. Mountains of knowled
 ge hide in\nplaces we cannot access or use. The more we write down\, the m
 ore it\ntakes to find and understand things we find useful.\n\nKnowledge (
 web\, software\, books) keeps growing faster and faster! This\nis not sust
 ainable: we cannot keep up with it! What if we repeat the\nerror of somebo
 dy else\, only because it would take too much reading to\nknow? What if th
 at knowledge is in some code we work with everyday?\n\nMoldable developmen
 t is a paradigm shift that attempts to solve this\nproblem. In a gist\, th
 e tool you use should let you create special tools\nto learn smartly from 
 what you have already.\n\nSince we use Emacs\, let's make our great editor
  moldable!\n\nThis talk shows my progress in making Emacs closer to such a
  tool. We\nare going to see how we can mold structured (and maybe even nat
 ural)\ntext to learn better\, how we can inject notes in our projects and 
 how\nself documenting this tool is!\n\nI aim to inspire you to find a quic
 ker way to learn from our digital\nworld!\n\nYou can learn more about this
  at: <https://github.com/ag91/moldable-emacs>\n\n\n\n# Outline\n\n-   5-10
  minutes: quick demo of moldable-emacs
END:VEVENT
BEGIN:VEVENT
SUMMARY:CLEDE the Common Lisp Emacs Development Environment.
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-clede
URL:https://emacsconf.org/2021/talks/clede
DTSTART;TZID=America/Toronto:20211128T145500
DTEND;TZID=America/Toronto:20211128T151500
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/clede\n# CLEDE the Common Lisp Emacs Development Envir
 onment.\nFermin MF\n\nI've been developing a package that helps with the d
 evelopment of\nCommon Lisp's software\,\nit's uses the internal semantic f
 ramework\, it has a custom reader\nand integration for\ncommon Emacs packa
 ges (like Sly and the internal inferior-lisp-mode).\n\nThe idea is to supp
 ly features that other language with and static\nanalyzer have\,\nlike ref
 actoring and code generation.\n\nFor more details: <https://gitlab.com/sas
 anidas/clede>\n\n-   20 minutes:\n    It seems like not too much people kn
 ows about semantic\, so I can\n    summarize some of it in 10 minutes\n   
  and then  An explanation on how to use the package\, how to extend it\n  
   and the future of it.
END:VEVENT
BEGIN:VEVENT
SUMMARY:Imaginary Programming
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-imaginary
URL:https://emacsconf.org/2021/talks/imaginary
DTSTART;TZID=America/Toronto:20211128T152200
DTEND;TZID=America/Toronto:20211128T153200
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/imaginary\n# Imaginary Programming\nShane Mulligan\n\n
 Imaginary Programming (IP) is both methodology and paradigm. It is an\next
 ension of literate programming and a way of creating software without\nthe
  use of imperative\, functional or even declarative code. Yet IP employs\n
 all disciplines to achieve the miraculous. The only contingency is on one\
 nor more language models\, known as foundation models. The real value of I
 P\nis not found by abandoning sound logic altogether\, but in weaving the 
 real\nwith the imaginary. The future of imaginary programming is one in wh
 ich\nalmost all of computing is inferred. I have built a suite of tools ba
 sed on\nemacs for interfacing real programming languages with imaginary on
 es\; all\nof this in order to demonstrate what I mean\; a ‘complex’ termin
 al that lets\nyou imagine what happens no matter how nested you are within
  interpreters\,\nan example-oriented language\, a file format that encodes
  the provenance of\ntext and a library for imaginary functional programmin
 g primitives called\niLambda. It is important to recognise IP because\, fo
 r lack of a better\nterm\, it has far-reaching implications for intellectu
 al property and the\nGPL. Please keep an open mind.\n\n\n\n# Outline\n\n- 
   5-10 minutes:\n-   a 5 minute introduction to imaginary programming\, fo
 llowed by\n    -   a demonstration of iLambda.\n        -   iλ\, a family 
 of imaginary programming libraries\n        <https://mullikine.github.io/p
 osts/designing-an-imaginary-programming-ip-library-for-emacs/>\n\n\n\nIRC 
 libertyprime at #emacs on libera\n\nShane Mulligan
END:VEVENT
BEGIN:VEVENT
SUMMARY:How to build an Emacs
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-build
URL:https://emacsconf.org/2021/talks/build
DTSTART;TZID=America/Toronto:20211128T153600
DTEND;TZID=America/Toronto:20211128T155600
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/build\n# How to build an Emacs\nFermin MF\n\nThis is a
  deep dive in the Emacs philosophical and technical\naspect on what makes 
 our beloved GNU Emacs\nwhat it it. It's also a talk about the early LISP m
 achines and\nfascinating were those days of experimentation and engineerin
 g.\n\nIt will continue with the Emacs benefits/trade-offs from an\nuser/de
 veloper stand points\, what things can be improved and\nwhat can be an hyp
 othetical path on how to build a software that\ncan also be called Emacs.\
 n\nAs a last part\, I'll talk about CEDAR\, an Emacs that I've been\ndevel
 oping in Common Lisp\, the project goals\nand the challenges.\n\nFor more 
 details about CEDAR: <https://gitlab.com/sasanidas/cedar>\n\n-   40 minute
 s:\n    A dive into the Emacs/Lisp machines history\, what makes GNU Emacs
 \n    an Emacs and how you can build an Emacs.
END:VEVENT
BEGIN:VEVENT
SUMMARY:M-x Forever: Why Emacs will outlast text editor trends
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-forever
URL:https://emacsconf.org/2021/talks/forever
DTSTART;TZID=America/Toronto:20211128T160300
DTEND;TZID=America/Toronto:20211128T164300
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/forever\n# M-x Forever: Why Emacs will outlast text ed
 itor trends\nDavid Wilson\n\nThe computer software industry has seen many 
 "popular" text editors come\nand go\, often due to the mercurial fashions 
 of software development.  In\nthis talk\, we'll take a look at why popular
  editors fade and the\nspecific aspects of Emacs that will ensure it remai
 ns relevant\nregardless of mainstream popularity.\n\n\n\n# Outline\n\n- Di
 scuss the core thesis\, the features that make Emacs\n  desirable for long
 -term use (extensibility\, day-to-day 'life' features)\n\n- Include more b
 ackground on the text editor landscape and\n  how the scope of various edi
 tors is more narrow and doesn't compare to Emacs.\n\n- Talk about specific
  instances where editors were popular\, fell out\n  of popularity\, and wh
 y (due to changing fashions\, not usually\n  better features).
END:VEVENT
BEGIN:VEVENT
SUMMARY:Closing remarks day 2
LOCATION:https://emacsconf.org/
UID:emacsconf-2021-day2-close
URL:https://emacsconf.org/2021/talks/day2-close
DTSTART;TZID=America/Toronto:20211128T165000
DTEND;TZID=America/Toronto:20211128T170000
DTSTAMP:20211028T084127
DESCRIPTION: Times are approximate and will probably change.\nhttps://emacs
 conf.org/2021/talks/day2-close\n# Closing remarks day 2
END:VEVENT
END:VCALENDAR