summaryrefslogtreecommitdiffstats
path: root/2023/talks/core.md
diff options
context:
space:
mode:
Diffstat (limited to '2023/talks/core.md')
-rw-r--r--2023/talks/core.md179
1 files changed, 179 insertions, 0 deletions
diff --git a/2023/talks/core.md b/2023/talks/core.md
new file mode 100644
index 00000000..a413a3c2
--- /dev/null
+++ b/2023/talks/core.md
@@ -0,0 +1,179 @@
+[[!meta title="Emacs core development: how it works"]]
+[[!meta copyright="Copyright © 2023 Stefan Kangas"]]
+[[!inline pages="internal(2023/info/core-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# Emacs core development: how it works
+Stefan Kangas
+
+[[!template id="help"
+summary="main talk does not have captions"
+tags="help_with_main_captions"
+volunteer="jchelary 2024-01-10"
+message="""This talk does not have captions yet.
+Would you like to help [caption this talk](/captioning)?
+You may be able to start with these [autogenerated captions](/2023/captions/emacsconf-2023-core--emacs-core-development-how-it-works--stefan-kangas--main.vtt)."""]]
+
+[[!inline pages="internal(2023/info/core-before)" raw="yes"]]
+
+- Why it is fun and exciting to contribute to Emacs
+ - We have easy bugs that anyone can fix, in random packages
+ - And extremely hard ones for experts in things like garbage
+ collection, and compilers
+- We are not scary, in fact working to build a welcoming culture.
+- The nature of a public list
+ - Don't listen to random people being negative or hostile
+ - No response is not necessarily a bad thing
+- Cultural aspects of emacs-devel vs GitHub
+- How to behave (be polite, etc.)
+- Email vs forge, help wanted.
+- Why copyright assignment
+- Plans for Emacs 30 (maybe) - needs coordinating with Eli
+
+If I have more time, I'd like to cover more things, for example:
+
+- GNU ELPA vs NonGNU ELPA - why and how
+ - Our plans for GNU ELPA going forward (bundle stuff in tarballs)
+- The future of Emacs: a vision
+
+Basically, I want to do everything I can to inspire people to join core
+development and to lower the barrier to participating. In effect trying
+to work on "bridging the gap" that we have identified exists between
+emacs-devel and the community.
+
+About the speaker:
+
+Stefan Kangas is one of the Emacs core maintainers.
+
+
+# Discussion
+
+## Questions and answers
+
+- Q:Can you tell us some about your background with Emacs development
+ and programming in general (your professional work possibly)?
+ - A: studied CompSci at university.  started programming on a
+ Commodore 64, then C, Perl, and so on
+- Q: Do you think that one day, there will be a "native" graphical
+ web browser in Emacs or is it kind of against its philosophy and
+ architecture? So will we stick just with EWW and EAF or similar
+ workaround tricks?
+ - A: Proper HTML rendering in Emacs is a dream right now
+- Q: Emacs development and communication still is very much focused on
+ E-Mail mailing lists. I like this. But what do you think about
+ introducing other channels for talking to users? E.g., the Emacs
+ project/ community could set up a Mastodon instance of its own etc.
+ - A:
+- Q: What are some features or packages you'd like to see developed
+ by the community?
+ - A: Some of the things that Stefan would like to see happen right
+ now
+ - treesitter: improving and working on new modes
+ - refactoring capabilities in Emacs
+- Q: What is the hardest decision being made within Emacs-dev for last
+ three years?
+ - A:
+- Q: Any plans to integrate EXWM into core? Emacs is a really good WM.
+ - A:
+- Q: Do you think it is a good idea to choose Org-mode for writing
+ documentation instead of Texinfo?
+ - A
+- Q: What do you plan to work on in Emacs core in the future?
+ - A:
+- Q: What do you use Emacs for in your life, other than working on
+ Emacs itself?
+ - A: Programming, obviously (Stefan works as a programmer). 
+ org-mode (including to prepare this talk), for productivity, rss
+ reader, emails.
+- Q: What could we do in order to make Emacs more attractive for
+ younger users?
+ - A: 
+- Q: How are we going to make sure that the cool idea is going to pass
+ it through for the next generation, let's say 20 years later, that
+ generation still have the good knowledge we have today.
+ - A:
+- Q: If you're willing to discuss it, what do you think about the
+ recent controversy about use of cl-lib in Emacs core code?
+ - A: Stefan's opinion is on emacs-devel.
+- Q: When we find a bug, in our emacs.... do we need to try to
+ replicate it on the sid version (debian/sid=1:29.1+1-5 at ehe time
+ of writing), then update all the usual lisp package we use... and
+ if we succeed to replicate the bug in this version, only then go to
+ the development version 30 and do the same ? Then only, ask for
+ assistance in reporting the bug we found ("M-x report-emacs-bug" 
+ will be sufficient ) ?
+ - A: (Answering for Stefan, because information about how to
+ report Emacs bugs is widely available, including in Emacs's own
+ documentation: You should try to reproduce it on the latest
+ released version of Emacs, with a clean Emacs configuration
+ (i.e. "emacs -q"), before reporting.  And you should look for
+ existing bug reports on the tracker.  If you have extra time,
+ consider trying to reproduce it on the master branch or the
+ branch for the next release as well.  And if you're sure
+ you've found a bug, be sure to report it using "M-x
+ report-emacs-bug" rather than just emailing emacs-devel about
+ it.)
+- Q: On branching off sub-threads. I note that they are less visible
+ compared to starting a new thread in practice. I am wondering if it
+ is just my impression or something devs also observe.
+ - A:
+- Q: What about rewriting emacs in Rust? Use guile instead of elisp?
+ Multi-threaded emacs? Make emacs prettier and shiny? And of course,
+ sane defaults! Just kidding. We are spoiled children because you and
+ Eli, Lars, etc. do an impressive work. I live in Emacs since 2001.
+ Thanks!
+ - A:
+- Q: The only downside I see with copyright assignment is that one has
+ to disclose their real identity. Would it be a possibility to assign
+ copyright under a nickname?
+ - A: (not the speaker) FSF said they can publish a pseudonym but
+ need the actual identity in their paperwork, which will be
+ presumably protected, but it's not totally anonymous.
+ - (AFAIK from Bastien) The actual FSF assignee list is not
+ public - I know that it is available to maintainers, but
+ must not be shared.
+- Q:Do you think it is possible to reach an agreement on sane defaults
+ for better out of the box experience?
+ - A: It's more of a social problem than a technical problem (my
+ sane defaults might not be yours).
+- Q:Will xwidgets have a future? Seeing the new bugs popping up in the
+ latest xwidget dev.
+ - A:
+- Q: Have you voted for Emacs as the software of the year on the
+ Tuxies by Jupiter Broadcasting? I did, because Emacs 29 is great!
+ Thank you! :-)
+
+## Notes
+
+- Cambrian explosion of packages (5000 packages in MELPA)
+ - GNU ELPA <- generally better if someday it might be good to
+ ship it with Emacs
+ - João Távora (Eglot author): haven't seen a problem with
+ copyright assignment
+ - To be fair, it does happen in certain cases. But
+ infrequently.
+ - New package archive NonGNU ELPA is now enabled by default, no
+ copyright assignment needed
+- Emacs is hackable. I think that's a blessing and a curse. The types
+ of choices you can make when you implement... Different choices
+ between things like Common Lisp and Scheme. I think we have that
+ kind of tensions within Emacs. These are good discussions to have. I
+ think what will never change is that Emacs is hackable. Emacs is
+ customizable. This is what's bringing you that amazing user
+ experience. The flip side is that it's easy to hack around bugs
+ instead of fixing them. Or we accept limitations in Emacs core. I
+ think we could get better at taking those few extra steps to make
+ Emacs better for all users.
+- Thank you Stefan! That was all really cool! :D
+- thank you you guys it's fantastic
+- thank you guys to say you amazing is to not give you enough
+
+
+[[!inline pages="internal(2023/info/core-after)" raw="yes"]]
+
+[[!inline pages="internal(2023/info/core-nav)" raw="yes"]]
+
+