summaryrefslogblamecommitdiffstats
path: root/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt
blob: 3588810ebe45c4658265d1ccee674a70dd333be7 (plain) (tree)
1
2
3
4
5
6
7
8
9


                             
                                            
 

                                 

                             
                                       

                             
            

                             
                          







                                   
                    







                                  
       

                             
                                         

                             
                            

                             
                                

                             
                                  




                                     
                            




                                      
                   
 

                                 
 

                                                

                             
                                       

                             
                   

                             
                                        

                             
             

                             
                                   

                             
                  

                             
                                       

                             
                                    




                             
                   







                                       
                                

                             
                      

                             
                                   

                             
                                

                             
                          

                             
                                      




                                   
                                     

                             
                                       

                             
                                




                                      
                   
 

                                   
 

                             




                                   
                         



                                    

                             

                             
                                        







                                      
                     

                             
                                  

                             
                                     




                             
                         

                             
                                        

                             
          

                             
                                     




                             
                   

                             
                         

                             
                                         
 

                                  
 

                                
 

                                   

                             
                            

                             
                                      

                             
           

                             
                                      

                             
                      

                             
                                     

                             
                

                             
                                         




                             
                                       

                             
                          

                             
                                        







                             
           

                             
                                    

                             
                                         

                             
                                         

                             
          

                             
                                       




                             
                       

                             
                             

                             
                               

                             
                                     




                             
                                      

                             
                        

                             
                                  







                                  
                                   

                             
                                         




                                  
                 

                             
                                   

                             
                       




                                      
                                     




                                       
     




                                   
                    

                             
                       

                             
                                   




                                    
                                       







                                    
                       




                                      
               
 

                                         

                             
                              

                             
                                       

                             
                                       

                             
                 




                                      
                        

                             
                                   




                               
           

                             
                                         




                                        
       

                             
                                   
 

                               

                             
                                      

                             
          

                             
                              

                             
                                          

                             
                      

                             
                                        

                             
                    

                             
                                      

                             
                   

                             
                              

                             
                                        

                             
                                        

                             
                                         

                             
                          

                             
                                     




                             
                                  







                                  
                     

                             
                                      

                             
                                 

                             
                                  

                             
                                     

                             
                                    




                             
                              

                             
                                   




                             
                                   

                             
                                      

                             
                                       

                             
                                         

                             
                        

                             
                                     




                                    
                                    

                             
                                

                             
                                      




                             
                             

                             
                                        




                             
                                   

                             
                                   

                             
          

                             
                               

                             
                     
 

                                       

                             
                                         

                             
                           
 

                                          







                                      
                       

                             
                                    
 

                                 
 

                             

                             
                                 

                             
                                        
 

                                        
 

                                      

                             
                                      
 

                                    
 

                                  
 

                                
 

                             
 

                                           

                             
                                        










                                     
                                   

                             
                

                             
                






                                  

                                           




                                     
                 

                             
                                    






                              

                             
 

                             
 

                             

                             
                             
 

                                







                                  
                               

                             
                              




                                     
                         
 

                             
 

                             

                             
                                     






                                   

                             

                             
                                        

                             
            




                                        
             

                             
                                        
 

                                        

                             
                        

                             
                                      

                             
                    

                             
                          

                             
                                        

                             
                                   




                              
                                  

                             
                       







                                    
                                 

                             
                               










                                    
                                      

                             
                     




                             
                                         

                             
                                    
 

                             
 

                                              
 

                             

                             
                                    

                             
       




                                 
        

                             
                            




                                      
                                 

                             
                       

                             
                               

                             
                                  







                                      
                                         

                             
                                        



                                   

                             
 

                                   

                             
                  




                             
                             




                                    
                                

                             
                          

                             
                                    

                             
                       







                                   
                        

                             
                                

                             
                               

                             
         
 

                                         







                                       
                                         

                             
                         









                                    

                                       

                             
                                 

                             
                     




                                      
                    

                             
                                     

                             
          
 

                                 
 

                             
 

                               




                                        
                                

                             
                                       

                             
                                   



                                 

                                              
 

                             

                             
                                

                             
               

                             
                                 

                             
                                 
 

                             
 

                             
 

                                     










                                     
                                   






                                      

                                    
 

                             

                             
                               







                                 
                  
 

                                  




                                    
       

                             
                       

                             
                               

                             
         

                             
               




                                        
                                        

                             
        










                                      
                         

                             
                               

                             
                                       










                                     
                                     




                             
                            

                             
                                   







                                    
                                       

                             
                             




                             
                                   

                             
                                  

                             
         
 

                             







                                     
              

                             
                                       

                             
                                    
 

                             
 

                             
 

                              

                             
                













                                       
                  
 

                             
 

                             
 

                             
 

                             

                             
                                      

                             
             

                             
                              

                             
              

                             
                                
 

                                     
 

                             



                                   

                               
 

                                     

                             
                                          







                                        
                                  




                             
                                     

                             
                                         

                             
                                      

                             
                                        

                             
          

                             
                      

                             
                                      

                             
           




                                     
           

                             
                                   

                             
                                  

                             
                    

                             
                                        







                                       
                    

                             
                                

                             
                                  

                             
                      



                                      

                             

                             
                           
 

                                 
 

                             







                                    
        

                             
                                     

                             
                    

                             
          

                             
                                   

                             
         

                             
                        

                             
                            

                             
                     

                             
                             




                                      
         

                             
                                     

                             
                                        

                             
             







                                    
                    

                             
                                      



















                                        
                               

                             
          




                             
                               







                                     
                                         

                             
                                         

                             
                                   

                             
                                        



                                       

                             

                             
                                    

                             
       






                                      

                             
 

                              

                             
                                  
 

                             




                                        
   

                             
                                         

                             
                    







                                       
                                  

                             
                 

                             
                               
 

                                    

                             
                     

                             
                                         
 
                             
                                

                             
                                       




                                   
                                  

                             
                                    

                             
                                     




                             
                                         

                             
                          

                             
                            

                             
                                    




                             
                                 

                             
                            

                             
                                 

                             
                                     

                             
          

                             
                          

                             
                                       

                             
                   

                             
              

                             
                                      







                                     
                                  
 

                                     
 

                             




                             
                                  

                             
                                          




                                       
                         

                             
                                           

                             
                                       

                             
                       




                                
                             

                             
                                

                             
                     

                             
                              

                             
                               

                             
                                  

                             
                                        




                                      
          

                             
                                         










                                  
                         

                             
                     

                             
                                       

                             
               
















                                      
                               







                             
                          

                             
                                       




                             
                                   

                             
                                    

                             
                                     







                             
                              







                                      
                          

                             
                                

                             
                                      

                             
                       
 

                                          

                             
                   

                             
                             







                                   
       










                                       
           

                             
                                        







                                    
                        

                             
                                        

                             
                                  

                             
                                      







                             
                        







                                    
                   

                             
                                       

                             
                                       

                             
                                   

                             
                        

                             
                                        

                             
               

                             
                          




                             
                         

                             
                                        

                             
     



                                       

                             




                                      
         




                                
                         

                             
                                     

                             
      

                             
                                       
 

                             

                             
                           

                             
                        

                             
                                




                                        
                                           




                                   
             

                             
                                         







                                 
                                    

                             
                                        

                             
              
 

                                    
 

                             

                             
                                         

                             
                                     

                             
                                  







                                        
                                      

                             
     

                             
                                

                             
                                       

                             
                  

                             
          

                             
                                  

                             
                               

                             
                                    

                             
         

                             
                                 

                             
                                         

                             
                    

                             
                          

                             
                   

                             
                                     

                             
                        

                             
                                 




                                   
                                     

                             
                                        







                                   
                                        







                                     
                                

                             
                     

                             
                                 

                             
               

                             
                                        

                             
                     
 

                              

                             
                             



                             

                                







                               
                                     










                                      
                   
 

                                 
 

                             




                                  
                                      

                             
                           




                                        
        

                             
                                       




                             
                      




                                     
                                        




                                        
          

                             
                                  







                                      
           

                             
                                  
 

                                    
 

                             




                                     
                        

                             
                                  




                             
                                     

                             
                        

                             
                                        






                                      

                             
 

                               

                             
                                       

                             
                                     

                             
                              

                             
              




                                 
            

                             
                                     




                                 
                    

                             
                                    

                             
                        

                             
                               
 

                                    
 

                                      

                             
                 
 

                                    
 

                             

                             
                                        

                             
                                       

                             
                            

                             
                                        

                             
     

                             
                                   










                                     
                  

                             
                                         

                             
                       




                                     
             

                             
                               
 

                              
 

                             




                             
                             

                             
                                   




                             
                                         

                             
                  

                             
                                  













                                      
                    

                             
                         




                             
                          




                                       
                                        




                                 
        










                                      
                                      







                                       
              




                             
                                      

                             
                                        

                             
                           

                             
            

                             
                                     

                             
               

                             
                                        

                             
                
 

                             
 

                             

                             
                                     




                               
                                   

                             
                             

                             
                                         

                             
                                

                             
            

                             
                

                             
                                       

                             
                                  

                             
                         

                             
                                   




                                  
                                       




                                      
            




                                     
    

                             
                                    




                             
                                 




                             
                  

                             
                                          




                                    
                    

                             
                        

                             
                                    










                                      
                                     

                             
                                    

                             
                         







                                       
                                         

                             
              

                             
                                        




                             
                     

                             
                                      

                             
        

                             
                                       




                                
             




                                        
                         

                             
                                       

                             
     

                             
                           

                             
                                        




                                       
              

                             
                                        

                             
                 

                             
                                     




                                    
                        

                             
                                       

                             
                              




                             
                                           




                             
           

                             
             

                             
                                       

                             
                                 




                              
                                   

                             
                                           







                                       
                                         
 

                                        
 

                             

                             
                               

                             
                                      

                             
                              

                             
            

                             
                                 
 
                             


                                        
                    




                                   
            

                             
                       




                                    
                                     

                             
                    

                             
                                         




                             
                              

                             
                 

                             
                       

                             
                                        




                               
             

                             
                                     

                             
                     

                             
                     

                             
                                         




                             
                 

                             
                              

                             
                                 




                                        
     

                             
                         




                             
                                  






                                      

                             
 

                              

                             
              







                                     
      

                             
                                     



                                       

                             

                             
                             

                             
                         

                             
                                       

                             
                       

                             
     
WEBVTT

00:00:00.640 --> 00:00:04.160
Okay. So, the first question is, "What is an

00:00:04.160 --> 00:00:08.800
example of a package currently in

00:00:08.800 --> 00:00:12.160
a non-ELPA repo that does not work well

00:00:12.160 --> 00:00:13.759
with Emacs?"

00:00:13.759 --> 00:00:18.000
Well, one of them is s.el,

00:00:18.000 --> 00:00:19.760
and this is what made me aware that

00:00:19.760 --> 00:00:21.920
there was an issue here that caused

00:00:21.920 --> 00:00:25.760
problems. Well, s.el

00:00:25.760 --> 00:00:29.439
is a beautifully written package

00:00:29.439 --> 00:00:31.279
that appears to be very useful for

00:00:31.279 --> 00:00:32.800
people.

00:00:32.800 --> 00:00:36.320
And there's just one thing wrong with it.

00:00:36.320 --> 00:00:39.520
It gobbled up the name space

00:00:39.520 --> 00:00:43.680
of symbols starting with s dash.

00:00:43.680 --> 00:00:47.039
And I was shocked to discover that

00:00:47.039 --> 00:00:49.440
somebody who had not coordinated with

00:00:49.440 --> 00:00:51.760
the Emacs developers at all,

00:00:51.760 --> 00:00:55.360
had implemented a package using such a

00:00:55.360 --> 00:00:56.800
short prefix, which

00:00:56.800 --> 00:00:58.723
isn't the right way to do things.

00:00:58.723 --> 00:01:01.520
Oh, by the way, the questions have moved off the

00:01:01.520 --> 00:01:04.000
screen, this is no good. I can continue

00:01:04.000 --> 00:01:05.360
answering this one,

00:01:05.360 --> 00:01:08.880
but I'll be stuck when this one is over.

00:01:08.880 --> 00:01:12.159
Anyway, so…

00:01:12.159 --> 00:01:15.040
I was told that there was nothing I

00:01:15.040 --> 00:01:16.560
could do about it,

00:01:16.560 --> 00:01:19.920
that so many users, packages were using

00:01:19.920 --> 00:01:22.960
s.el and thus essentially using that

00:01:22.960 --> 00:01:24.240
definition

00:01:24.240 --> 00:01:28.080
of the s-* symbols,

00:01:28.080 --> 00:01:31.360
that any attempt to use them

00:01:31.360 --> 00:01:34.720
publicly or privately for anything else

00:01:34.720 --> 00:01:38.079
would lead to horrible problems.

00:01:38.079 --> 00:01:41.680
And I don't like that.

00:01:41.680 --> 00:01:45.520
I decided, I wanted to do something

00:01:45.520 --> 00:01:49.040
a) so that wouldn't happen again

00:01:49.040 --> 00:01:52.320
and b) to make it unhappen

00:01:52.320 --> 00:01:55.119
in that case. Well, the way to make it

00:01:55.119 --> 00:01:57.840
unhappen in that case is with a new

00:01:57.840 --> 00:02:02.240
symbol renaming feature. The idea is,

00:02:02.240 --> 00:02:05.360
you rename that file to something else,

00:02:05.360 --> 00:02:09.119
and then you define an s.el that

00:02:09.119 --> 00:02:11.520
sets up symbol renaming and then loads

00:02:11.520 --> 00:02:13.040
the something else.

00:02:13.040 --> 00:02:15.590
So, it actually runs the same code,

00:02:15.590 --> 00:02:16.400
it just

00:02:16.400 --> 00:02:20.879
doesn't globally define the symbols

00:02:20.879 --> 00:02:23.920
s dash whatever, but they

00:02:23.920 --> 00:02:26.160
appear to work for the programs that

00:02:26.160 --> 00:02:32.640
explicitly require s.el

00:02:32.640 --> 00:02:36.000
or the s package. So, this gets the same

00:02:36.000 --> 00:02:38.080
behavior for all the programs that are

00:02:38.080 --> 00:02:40.239
using that library

00:02:40.239 --> 00:02:43.360
and doesn't interfere

00:02:43.360 --> 00:02:47.840
with the global name space at all.

00:02:47.840 --> 00:02:50.319
However, to do that we need to have a

00:02:50.319 --> 00:02:52.080
package

00:02:52.080 --> 00:02:55.360
s.el, that isn't the same

00:02:55.360 --> 00:02:57.760
totally. A short one file that's totally

00:02:57.760 --> 00:02:58.640
different.

00:02:58.640 --> 00:03:01.440
Plus, we've got to have the file that

00:03:01.440 --> 00:03:02.840
normally is called

00:03:02.840 --> 00:03:06.239
s.el available, but

00:03:06.239 --> 00:03:10.319
under another name. Well,

00:03:10.319 --> 00:03:13.040
how are we going to do that? We can't put

00:03:13.040 --> 00:03:18.879
this into Emacs in a nice way that

00:03:18.879 --> 00:03:24.560
won't make the maintainer angry.

00:03:24.560 --> 00:03:28.159
(or the developer of that package.)

00:03:28.159 --> 00:03:32.080
But we can do it with NonGNU

00:03:32.080 --> 00:03:34.640
ELPA. We can put those two things into

00:03:34.640 --> 00:03:36.239
NonGNU ELPA

00:03:36.239 --> 00:03:38.720
without any difficulty. And this shows

00:03:38.720 --> 00:03:40.720
one of the advantages.

00:03:40.720 --> 00:03:43.280
We can put files, we can put packages

00:03:43.280 --> 00:03:45.440
into NonGNU ELPA

00:03:45.440 --> 00:03:48.400
and make changes in them. Now, in general

00:03:48.400 --> 00:03:49.599
we wouldn't

00:03:49.599 --> 00:03:51.760
go to the effort of making big changes.

00:03:51.760 --> 00:03:54.319
That's just too much to do

00:03:54.319 --> 00:03:56.400
unless something's really important. But

00:03:56.400 --> 00:03:58.000
small changes

00:03:58.000 --> 00:04:01.120
that help things fit in are

00:04:01.120 --> 00:04:04.319
easy to do.

00:04:04.319 --> 00:04:07.120
Okay, oh, so basically the recording

00:04:07.120 --> 00:04:10.319
didn't get anything until now. I just saw

00:04:10.319 --> 00:04:13.439
a note pop up, "this session is now being

00:04:13.439 --> 00:04:14.319
recorded".

00:04:14.319 --> 00:04:16.320
I hope it's been recorded all along. It

00:04:16.320 --> 00:04:18.160
would be a shame to

00:04:18.160 --> 00:04:21.280
spoil… Oh, good okay.

00:04:21.280 --> 00:04:27.120
So, that's one of the issues.

00:04:27.120 --> 00:04:30.479
"Does NonGNU ELPA already exist

00:04:30.479 --> 00:04:33.840
or is this a sort of "plan"?" I don't

00:04:33.840 --> 00:04:35.360
know why you have to

00:04:35.360 --> 00:04:37.919
put scare quotes around the word plan.

00:04:37.919 --> 00:04:40.400
It's sort of in between.

00:04:40.400 --> 00:04:44.160
The creation of it is started. You

00:04:44.160 --> 00:04:45.440
will find

00:04:45.440 --> 00:04:48.160
that there is an archive that it's

00:04:48.160 --> 00:04:51.520
possible to download packages from,

00:04:51.520 --> 00:04:54.880
and there is a repository to put them in,

00:04:54.880 --> 00:04:57.120
but that's not the way it's really

00:04:57.120 --> 00:04:58.560
supposed to work.

00:04:58.560 --> 00:05:02.800
This is not supposed to be like the

00:05:02.800 --> 00:05:04.320
GNU ELPA, where there's

00:05:04.320 --> 00:05:07.280
one repo for all the packages and thus

00:05:07.280 --> 00:05:09.039
anyone who wants to edit any of them,

00:05:09.039 --> 00:05:11.199
anyone that we want to have edit any of

00:05:11.199 --> 00:05:11.680
them,

00:05:11.680 --> 00:05:13.280
has got to have access to the whole

00:05:13.280 --> 00:05:15.440
thing for one thing.

00:05:15.440 --> 00:05:18.560
Some packages will make

00:05:18.560 --> 00:05:21.840
an arrangement with the developers,

00:05:21.840 --> 00:05:25.120
and they'll assure us that they will

00:05:25.120 --> 00:05:27.039
do things as things should be done, and

00:05:27.039 --> 00:05:28.400
then we'll

00:05:28.400 --> 00:05:32.080
have their repo copied automatically

00:05:32.080 --> 00:05:35.919
or in other cases, say,

00:05:35.919 --> 00:05:38.160
copied manually with a little checking

00:05:38.160 --> 00:05:40.160
every so often.

00:05:40.160 --> 00:05:46.400
In other cases we'll need to have our own

00:05:46.400 --> 00:05:49.440
repo for a particular package.

00:05:49.440 --> 00:05:52.479
But we shouldn't have a single repo for

00:05:52.479 --> 00:05:54.400
all the packages. We should have a repo

00:05:54.400 --> 00:05:55.919
for each package,

00:05:55.919 --> 00:05:57.840
so that the people working on that can

00:05:57.840 --> 00:06:01.120
get access to modify it.

00:06:01.120 --> 00:06:04.319
This has to be finished setting up,

00:06:04.319 --> 00:06:06.080
and we're still working out the

00:06:06.080 --> 00:06:07.680
procedures.

00:06:07.680 --> 00:06:11.039
For instance, for making the arrangements

00:06:11.039 --> 00:06:14.400
with the developers of a package so that

00:06:14.400 --> 00:06:15.440
we can,

00:06:15.440 --> 00:06:18.840
we hope, entrust its development to

00:06:18.840 --> 00:06:24.800
them and rely on them directly.

00:06:24.800 --> 00:06:26.560
And there may be more that needs to be

00:06:26.560 --> 00:06:29.840
worked on.

00:06:29.840 --> 00:06:36.639
Oh! There's so many questions.

00:06:36.639 --> 00:06:39.280
Well, I hope you… The third question is,

00:06:39.280 --> 00:06:40.880
what are the benefits?

00:06:40.880 --> 00:06:43.680
I hope that people now see the benefits.

00:06:43.680 --> 00:06:46.240
I've described them.

00:06:46.240 --> 00:06:49.599
Next question, "Is it possible to work

00:06:49.599 --> 00:06:51.440
with the MELPA team

00:06:51.440 --> 00:06:54.720
to integrate that into Emacs?"

00:06:54.720 --> 00:06:59.440
No, because the goal doesn't make sense.

00:06:59.440 --> 00:07:03.759
MELPA the way it's done, does not belong

00:07:03.759 --> 00:07:07.199
inside Emacs in any sense. Well, first of

00:07:07.199 --> 00:07:08.560
all, it can't literally be

00:07:08.560 --> 00:07:11.280
inside Emacs. We don't have copyright

00:07:11.280 --> 00:07:13.280
assignments for that code

00:07:13.280 --> 00:07:18.160
and to get it would be unfeasible,

00:07:18.160 --> 00:07:20.560
but we're not asking for copyright

00:07:20.560 --> 00:07:21.520
assignments for

00:07:21.520 --> 00:07:25.280
NonGNU ELPA so that's

00:07:25.280 --> 00:07:27.599
you might wonder could MELPA be merged

00:07:27.599 --> 00:07:31.440
with NonGNU ELPA? The problem is,

00:07:31.440 --> 00:07:35.039
MELPA doesn't modify the packages.

00:07:35.039 --> 00:07:38.240
It's just a place to find releases of

00:07:38.240 --> 00:07:41.360
packages wherever they happen to be,

00:07:41.360 --> 00:07:44.800
and they put packages in with

00:07:44.800 --> 00:07:48.319
only a little bit of checking.

00:07:48.319 --> 00:07:51.520
So, no. There are a lot of packages

00:07:51.520 --> 00:07:51.919
that are

00:07:51.919 --> 00:07:55.280
in MELPA that we'd like to get into

00:07:55.280 --> 00:07:58.479
NonGNU ELPA. I don't know the names of

00:07:58.479 --> 00:08:00.800
most of them, but I expect most of them

00:08:00.800 --> 00:08:04.160
would be fine to have. But they've got to

00:08:04.160 --> 00:08:08.560
be looked at one by one.

00:08:08.560 --> 00:08:12.000
There are some rules for NonGNU ELPA,

00:08:12.000 --> 00:08:14.479
and the only way to check them is to

00:08:14.479 --> 00:08:18.000
check them on one package at a time,

00:08:18.000 --> 00:08:22.160
and that's going to take effort.

00:08:22.160 --> 00:08:25.039
Now, with the people who work on MELPA

00:08:25.039 --> 00:08:26.080
want to get involved

00:08:26.080 --> 00:08:29.440
of this, that would be great.

00:08:29.440 --> 00:08:32.800
I haven't tried asking them. First we've

00:08:32.800 --> 00:08:33.919
got to get this thing

00:08:33.919 --> 00:08:37.599
set up. I doubt they would want to,

00:08:37.599 --> 00:08:40.479
but if they said yes, that would be

00:08:40.479 --> 00:08:44.159
wonderful.

00:08:44.159 --> 00:08:48.399
"Any thoughts of packages being

00:08:48.399 --> 00:09:00.959
added…" I'm afraid.

00:09:05.440 --> 00:09:08.959
Any thoughts of packages being added as

00:09:08.959 --> 00:09:11.040
some URL I don't know anything about, but

00:09:11.040 --> 00:09:13.120
it talks about open source,

00:09:13.120 --> 00:09:17.680
which means I'm very unlikely to have much

00:09:17.680 --> 00:09:20.959
in common with whatever they say about

00:09:20.959 --> 00:09:24.080
either licensing or

00:09:24.080 --> 00:09:27.760
what's right and wrong.

00:09:27.760 --> 00:09:29.959
But this seems to be something about

00:09:29.959 --> 00:09:33.523
disregarding licenses altogether.

00:09:33.523 --> 00:09:35.680
Well, that is basically

00:09:35.680 --> 00:09:39.360
asking to lose. There are reasons

00:09:39.360 --> 00:09:43.360
why we developed GNU licenses to release

00:09:43.360 --> 00:09:46.490
software, why we have criteria for which

00:09:46.490 --> 00:09:49.519
licenses make a program free software.

00:09:49.519 --> 00:09:52.640
If the program doesn't carry a license

00:09:52.640 --> 00:09:55.057
or if it carries a non-free license,

00:09:55.057 --> 00:09:58.323
that program is not free software.

00:09:58.323 --> 00:10:01.857
Now, you can maybe get away with

00:10:01.857 --> 00:10:04.800
disregarding that fact unless

00:10:04.800 --> 00:10:08.959
somebody, an author or publisher stops you.

00:10:08.959 --> 00:10:11.360
But we're not going to take… we're not

00:10:11.360 --> 00:10:12.399
basically going to

00:10:12.399 --> 00:10:15.200
disregard the question of whether the

00:10:15.200 --> 00:10:16.399
software we

00:10:16.399 --> 00:10:19.040
recommend to people, really is free

00:10:19.040 --> 00:10:21.360
software or not.

00:10:21.360 --> 00:10:24.560
That's basically

00:10:24.560 --> 00:10:27.519
blindfolding yourself to the legal

00:10:27.519 --> 00:10:29.120
situation of the software you're

00:10:29.120 --> 00:10:33.519
distributing, it's a terrible idea. If they

00:10:33.519 --> 00:10:35.920
disregard our licenses they will hear

00:10:35.920 --> 00:10:38.640
from us about it.

00:10:38.640 --> 00:10:40.959
And if you want to contribute to the

00:10:40.959 --> 00:10:42.720
free world

00:10:42.720 --> 00:10:46.320
put free licenses on your code

00:10:46.320 --> 00:10:47.823
and choose good ones.

00:10:47.823 --> 00:10:50.000
To get this information,

00:10:50.000 --> 00:10:57.120
look at gnu.org/licenses,

00:10:57.120 --> 00:10:59.839
and one page that's important

00:10:59.839 --> 00:11:05.040
is license-recommendations.html,

00:11:05.040 --> 00:11:07.360
that's where we advise you on what

00:11:07.360 --> 00:11:09.279
license we would recommend you use

00:11:09.279 --> 00:11:11.360
depending on the circumstances.

00:11:11.360 --> 00:11:15.600
There's also license-list.html

00:11:15.600 --> 00:11:20.160
which describes a lot of licenses and

00:11:20.160 --> 00:11:22.160
says which ones are free,

00:11:22.160 --> 00:11:23.957
which ones are compatible

00:11:23.957 --> 00:11:26.160
with the GNU GPL.

00:11:26.160 --> 00:11:28.640
It's really important to use only GPL

00:11:28.640 --> 00:11:31.519
compatible licenses

00:11:31.519 --> 00:11:34.320
so that the various programs can be

00:11:34.320 --> 00:11:40.720
combined together or linked.

00:11:40.720 --> 00:11:43.120
You can also get other information about

00:11:43.120 --> 00:11:44.240
GNU licenses

00:11:44.240 --> 00:11:47.040
and the reasons why they are written the

00:11:47.040 --> 00:11:55.279
way they are.

00:11:55.279 --> 00:12:03.200
Oh sorry, I don't see the next question.

00:12:03.200 --> 00:12:07.519
"Why do I insist on using per and pers?"

00:12:07.519 --> 00:12:11.680
I'm not happy with using

00:12:11.680 --> 00:12:14.959
they, which is a plural pronoun with a

00:12:14.959 --> 00:12:17.440
singular antecedent.

00:12:17.440 --> 00:12:20.480
It's bad because it causes

00:12:20.480 --> 00:12:24.800
confusion that is completely gratuitous.

00:12:24.800 --> 00:12:28.639
Many sentences become a lot of work

00:12:28.639 --> 00:12:33.200
to parse and understand if you

00:12:33.200 --> 00:12:36.480
add that ambiguity, that source of

00:12:36.480 --> 00:12:39.839
regular ambiguity. Now,

00:12:39.839 --> 00:12:42.720
I do not accept the demands of other

00:12:42.720 --> 00:12:43.680
people

00:12:43.680 --> 00:12:47.519
in regard to changing my grammar.

00:12:47.519 --> 00:12:50.800
You can try to convince me, but

00:12:50.800 --> 00:12:54.240
no one is entitled to give me orders

00:12:54.240 --> 00:12:55.440
about that

00:12:55.440 --> 00:12:58.880
or state their desires and expect

00:12:58.880 --> 00:13:03.200
obedience, not for me and not from you

00:13:03.200 --> 00:13:06.560
or anyone. We are all

00:13:06.560 --> 00:13:09.839
equally entitled to decide

00:13:09.839 --> 00:13:13.200
how we will speak and how we won't speak.

00:13:13.200 --> 00:13:18.000
I've spelled out all of these points

00:13:18.000 --> 00:13:19.857
in a file called

00:13:19.857 --> 00:13:29.423
stallman.org/articles/genderless-pronouns.html

00:13:29.423 --> 00:13:31.600
(corrected),

00:13:31.600 --> 00:13:33.760
of course, this is not a GNU project

00:13:33.760 --> 00:13:36.000
policy,

00:13:36.000 --> 00:13:46.839
it's my own personal ideas on the

00:13:46.839 --> 00:13:53.920
subject.

00:13:53.920 --> 00:13:57.120
If any of you feels offended

00:13:57.120 --> 00:14:01.040
by my referring to you with a singular

00:14:01.040 --> 00:14:04.320
gender-neutral pronoun, feel free

00:14:04.320 --> 00:14:07.680
to contact me privately

00:14:07.680 --> 00:14:10.720
and explain to me your reasons.

00:14:10.720 --> 00:14:14.000
I will pay attention to them, I'll

00:14:14.000 --> 00:14:16.639
think about them assuming that they're

00:14:16.639 --> 00:14:18.399
not something I've already

00:14:18.399 --> 00:14:24.079
considered and decided to dismiss before.

00:14:24.079 --> 00:14:27.760
But you must not speak to me as if I had

00:14:27.760 --> 00:14:30.240
no business not obeying you because

00:14:30.240 --> 00:14:31.690
that's rude,

00:14:31.690 --> 00:14:34.320
and it is not likely to convince me

00:14:34.320 --> 00:14:40.720
to change my mind.

00:14:40.720 --> 00:14:44.240
I believe it is not actually

00:14:44.240 --> 00:14:48.320
of stating offense to anyone,

00:14:48.320 --> 00:14:50.560
and the fact that somebody disagrees

00:14:50.560 --> 00:14:52.880
with me does not mean I'm wrong,

00:14:52.880 --> 00:15:00.720
but I always can be wrong.

00:15:00.720 --> 00:15:02.560
"When you wrote that you could add a

00:15:02.560 --> 00:15:05.680
package to NonGNU ELPA,

00:15:05.680 --> 00:15:07.120
are you implying that you would add

00:15:07.120 --> 00:15:09.199
packages with or without package

00:15:09.199 --> 00:15:11.120
maintainer's knowledge?"

00:15:11.120 --> 00:15:15.279
Of course, the packages we would

00:15:15.279 --> 00:15:18.000
distribute in this way are free

00:15:18.000 --> 00:15:19.519
software.

00:15:19.519 --> 00:15:22.720
Everyone is entitled to redistribute them

00:15:22.720 --> 00:15:26.560
and everyone is also entitled to modify

00:15:26.560 --> 00:15:26.959
them

00:15:26.959 --> 00:15:29.199
and redistribute them, that's part of the

00:15:29.199 --> 00:15:31.680
meaning of free software.

00:15:31.680 --> 00:15:35.040
I have been unable to understand

00:15:35.040 --> 00:15:38.320
how there came to be an idea

00:15:38.320 --> 00:15:42.560
that those who redistribute packages

00:15:42.560 --> 00:15:49.360
have some obligation to be mere mirrors

00:15:49.360 --> 00:15:54.480
and not modify things themselves.

00:15:54.480 --> 00:15:58.560
Well, if a package is

00:15:58.560 --> 00:16:01.440
being maintained by developers who are

00:16:01.440 --> 00:16:03.440
cooperating with us,

00:16:03.440 --> 00:16:06.240
we'll normally just leave it to them.

00:16:06.240 --> 00:16:07.360
After all,

00:16:07.360 --> 00:16:09.590
we have lots of other work to do.

00:16:09.590 --> 00:16:12.390
They are clearly experts on

00:16:12.390 --> 00:16:15.600
the packages they've developed,

00:16:15.600 --> 00:16:18.399
let's leave it to them if they make that

00:16:18.399 --> 00:16:22.800
sort of arrangement with us. But

00:16:22.800 --> 00:16:26.480
that's up to them, we can't insist that

00:16:26.480 --> 00:16:29.120
anyone make an arrangement with us,

00:16:29.120 --> 00:16:30.720
but since those programs are free

00:16:30.720 --> 00:16:35.723
software, anyone is free to redistribute them,

00:16:35.723 --> 00:16:41.839
and we will do that.

00:16:41.839 --> 00:16:45.519
"Have you ever used vi or vim or

00:16:45.519 --> 00:16:52.079
evil mode?" No.

00:16:52.079 --> 00:16:53.920
"Are there any plans to implement

00:16:53.920 --> 00:16:56.800
security considerations in NonGNU

00:16:56.800 --> 00:16:58.657
ELPA?"

00:16:58.657 --> 00:17:01.890
We probably should,

00:17:01.890 --> 00:17:04.959
and this will have to be implemented,

00:17:04.959 --> 00:17:08.559
but at the moment

00:17:08.559 --> 00:17:12.000
developer Emacs maintainers will copy

00:17:12.000 --> 00:17:13.280
packages

00:17:13.280 --> 00:17:18.160
into it, and so as long as they are

00:17:18.160 --> 00:17:20.160
verifying the packages and getting the

00:17:20.160 --> 00:17:22.480
packages from the right place

00:17:22.480 --> 00:17:24.690
that will take care of the security.

00:17:24.690 --> 00:17:25.919
Once there is…

00:17:25.919 --> 00:17:30.160
When with automatic copying in,

00:17:30.160 --> 00:17:33.200
will have to do something to

00:17:33.200 --> 00:17:35.200
make sure that we're fetching the

00:17:35.200 --> 00:17:40.320
packages securely.

00:17:40.320 --> 00:17:44.000
Some of you might be interested in

00:17:44.000 --> 00:17:46.080
helping to design and implement this

00:17:46.080 --> 00:17:48.000
system.

00:17:48.000 --> 00:17:52.559
"What distro do I use?"

00:17:52.559 --> 00:17:56.720
Well, which distro of GNU/Linux

00:17:56.720 --> 00:17:58.000
do I use?

00:17:58.000 --> 00:18:03.520
I use Trisquel,

00:18:03.520 --> 00:18:07.200
I haven't tried most of the free distros

00:18:07.200 --> 00:18:10.080
and the reason is, it's not crucial that

00:18:10.080 --> 00:18:11.120
I do so,

00:18:11.120 --> 00:18:13.520
we don't need me to rate the various

00:18:13.520 --> 00:18:14.799
free distros on

00:18:14.799 --> 00:18:17.520
practical questions because anyone can

00:18:17.520 --> 00:18:20.000
do that as well as I can.

00:18:20.000 --> 00:18:24.400
And so you can tell people what

00:18:24.400 --> 00:18:27.760
you think of using them. For me, what's

00:18:27.760 --> 00:18:29.360
important to me

00:18:29.360 --> 00:18:32.400
is to inform people of the difference

00:18:32.400 --> 00:18:34.160
between the free distros

00:18:34.160 --> 00:18:36.799
and the non-free distros, making sure

00:18:36.799 --> 00:18:38.799
people are aware that if you

00:18:38.799 --> 00:18:42.000
install a non-free GNU/Linux

00:18:42.000 --> 00:18:45.600
distro, you'll get a free operating

00:18:45.600 --> 00:18:46.720
system with

00:18:46.720 --> 00:18:49.919
non-free stuff in various quantities

00:18:49.919 --> 00:18:54.160
added, thus you will not reach freedom,

00:18:54.160 --> 00:18:56.240
although you'll make a lot of

00:18:56.240 --> 00:18:57.520
progress compared

00:18:57.520 --> 00:19:01.039
with using for instance, Windows or

00:19:01.039 --> 00:19:03.919
macOS or whatever vicious thing it

00:19:03.919 --> 00:19:06.160
might be.

00:19:06.160 --> 00:19:09.760
I'd like people to be aware

00:19:09.760 --> 00:19:12.799
of this next step towards

00:19:12.799 --> 00:19:14.720
getting freedom for yourself and your

00:19:14.720 --> 00:19:16.160
own computing,

00:19:16.160 --> 00:19:24.480
so that you can do that if you want to.

00:19:29.039 --> 00:19:31.360
"Who gets to make the final decision

00:19:31.360 --> 00:19:35.157
regarding NonGNU ELPA?"

00:19:35.157 --> 00:19:38.690
The Emacs maintainers are

00:19:38.690 --> 00:19:40.960
going to be in charge of this,

00:19:40.960 --> 00:19:44.480
because it's not

00:19:44.480 --> 00:19:47.760
just a technical decision it has with

00:19:47.760 --> 00:19:51.360
only technical consequences

00:19:51.360 --> 00:19:54.960
but in general unless there's some

00:19:54.960 --> 00:19:57.760
severe problem with the package we will

00:19:57.760 --> 00:20:03.600
want to put it in,

00:20:03.600 --> 00:20:05.757
and I expect most packages

00:20:05.757 --> 00:20:07.440
won't have a problem,

00:20:07.440 --> 00:20:09.357
and we can just put them in

00:20:09.357 --> 00:20:11.679
when we get to them.

00:20:11.679 --> 00:20:15.919
"Won't the ELPA link to non-free sites

00:20:15.919 --> 00:20:17.600
like GitHub?"

00:20:17.600 --> 00:20:20.799
It's a mistake to talk about a

00:20:20.799 --> 00:20:25.760
non-free site,

00:20:25.760 --> 00:20:29.120
because a site is not a program.

00:20:29.120 --> 00:20:32.123
A program is either free or non-free,

00:20:32.123 --> 00:20:32.960
and we have

00:20:32.960 --> 00:20:36.480
clearly stated criteria for that in

00:20:36.480 --> 00:20:42.457
gnu.org/philosophy/free-sw.html

00:20:42.457 --> 00:20:45.360
we have the free software definition,

00:20:45.360 --> 00:20:51.919
but a site, well, there're programs on it,

00:20:51.919 --> 00:20:54.000
but it doesn't make sense to ask whether

00:20:54.000 --> 00:20:55.120
the site is

00:20:55.120 --> 00:20:58.000
free or not, it's too simplistic a

00:20:58.000 --> 00:20:58.880
question

00:20:58.880 --> 00:21:02.000
to have a meaningful answer. Now, one

00:21:02.000 --> 00:21:05.679
thing you can ask about is, does the site

00:21:05.679 --> 00:21:08.799
send JavaScript to the user's machine,

00:21:08.799 --> 00:21:11.760
to the user's browser and if so, is that

00:21:11.760 --> 00:21:12.960
JavaScript

00:21:12.960 --> 00:21:17.120
non-free. Well, GitHub

00:21:17.120 --> 00:21:19.919
does send non-free JavaScript for some

00:21:19.919 --> 00:21:21.200
operations,

00:21:21.200 --> 00:21:24.240
so we consider it unsatisfactory as a

00:21:24.240 --> 00:21:26.159
repository,

00:21:26.159 --> 00:21:29.600
but that doesn't mean linking to it

00:21:29.600 --> 00:21:33.360
is a bad thing to do regardless of

00:21:33.360 --> 00:21:34.720
what the purpose is.

00:21:34.720 --> 00:21:36.640
For instance, if the purpose is to refer

00:21:36.640 --> 00:21:38.240
to some things

00:21:38.240 --> 00:21:40.799
that you can access without running the

00:21:40.799 --> 00:21:42.880
non-free JavaScript,

00:21:42.880 --> 00:21:47.200
then it's okay for that purpose.

00:21:47.200 --> 00:21:50.480
So, if now that you understand the

00:21:50.480 --> 00:21:52.559
details of this issue,

00:21:52.559 --> 00:21:54.880
you think that there is a problem with

00:21:54.880 --> 00:22:00.080
the link to caml…, there's,

00:22:00.080 --> 00:22:03.679
sorry, a link in caml.html,

00:22:03.679 --> 00:22:08.823
well, report it to bug-gnu-emacs,

00:22:08.823 --> 00:22:10.880
report it as an Emacs bug,

00:22:10.880 --> 00:22:14.159
but do think about the criteria I've

00:22:14.159 --> 00:22:15.840
just said because maybe it's not a

00:22:15.840 --> 00:22:18.000
problem.

00:22:18.000 --> 00:22:21.840
"Is it okay to use the GNU Affero GPL

00:22:21.840 --> 00:22:24.559
for Emacs packages?"

00:22:24.559 --> 00:22:28.880
Yes it is.

00:22:28.880 --> 00:22:31.120
"Which is your favorite programming

00:22:31.120 --> 00:22:32.080
language?

00:22:32.080 --> 00:22:35.200
If Lisp, which variant?"

00:22:35.200 --> 00:22:38.400
Well, I don't exactly have a

00:22:38.400 --> 00:22:41.760
favorite variant, but

00:22:41.760 --> 00:22:45.120
when I designed Emacs Lisp, I

00:22:45.120 --> 00:22:47.520
did the best thing I could think of at

00:22:47.520 --> 00:22:48.799
the time,

00:22:48.799 --> 00:22:52.559
subject to the need to keep it small.

00:22:52.559 --> 00:22:55.520
For the first few years it was important

00:22:55.520 --> 00:22:56.960
for GNU Emacs

00:22:56.960 --> 00:22:59.840
to run in a machine which could only

00:22:59.840 --> 00:23:00.799
give it half

00:23:00.799 --> 00:23:04.480
a meg of user space.

00:23:04.480 --> 00:23:06.559
So, there are a lot of constructs that

00:23:06.559 --> 00:23:09.200
clearly were desirable to include

00:23:09.200 --> 00:23:12.320
that I left out because we could

00:23:12.320 --> 00:23:16.880
make it work without them

00:23:16.880 --> 00:23:18.960
and then a lot of those have been added

00:23:18.960 --> 00:23:20.640
since because

00:23:20.640 --> 00:23:23.200
it's been a long time since we needed to

00:23:23.200 --> 00:23:40.960
keep Emacs so rigorously small.

00:23:40.960 --> 00:23:44.240
Someone is

00:23:44.240 --> 00:23:47.679
asking about the

00:23:47.679 --> 00:23:51.360
FSF's repository project. Well,

00:23:51.360 --> 00:23:54.400
we agreed that there would be another

00:23:54.400 --> 00:23:55.440
virtual machine

00:23:55.440 --> 00:23:59.919
running one of those for the GNU project,

00:23:59.919 --> 00:24:15.840
but that's as far as the discussion went.

00:24:15.840 --> 00:24:20.480
Question 17 is extremely insulting!

00:24:20.480 --> 00:24:25.600
I have not engaged in sexual harassment,

00:24:25.600 --> 00:24:28.720
don't expect me to plead guilty to such

00:24:28.720 --> 00:24:32.640
a nasty claim.

00:24:32.640 --> 00:24:35.600
People have been accusing me of many

00:24:35.600 --> 00:24:36.799
things,

00:24:36.799 --> 00:24:39.919
some of which are

00:24:39.919 --> 00:24:43.120
basically mole hills and some of which

00:24:43.120 --> 00:24:44.423
are false.

00:24:44.423 --> 00:24:50.640
So, I'm not going to give them

00:24:50.640 --> 00:24:53.840
anything, I have been bullied in a

00:24:53.840 --> 00:24:59.679
horrible way, that was wrong.

00:24:59.679 --> 00:25:02.720
I would like the bullies to apologize to

00:25:02.720 --> 00:25:03.520
me,

00:25:03.520 --> 00:25:06.320
and when I see that they're not bullying,

00:25:06.320 --> 00:25:08.960
I will forgive them.

00:25:08.960 --> 00:25:11.279
I would like to have conversations with

00:25:11.279 --> 00:25:14.799
them if any of the mole hills

00:25:14.799 --> 00:25:17.840
annoyed someone, I'm happy to talk

00:25:17.840 --> 00:25:20.880
with per and thus

00:25:20.880 --> 00:25:31.120
help resolve things with peace.

00:25:31.120 --> 00:25:39.200
And my opinion on "diversity" within

00:25:39.200 --> 00:25:42.720
Emacs. Well, Emacs is

00:25:42.720 --> 00:25:45.679
never going to be diverse, it is extended

00:25:45.679 --> 00:25:49.760
in one language, Emacs Lisp. ;-}

00:25:49.760 --> 00:25:53.279
Well, I don't know, we did have an idea

00:25:53.279 --> 00:25:55.840
of implementing extensibility using

00:25:55.840 --> 00:25:58.400
Scheme and the hope was that Guile

00:25:58.400 --> 00:26:01.120
could be integrated with Emacs, that

00:26:01.120 --> 00:26:02.960
turned out to be difficult, it may be

00:26:02.960 --> 00:26:05.279
impossible but in principle

00:26:05.279 --> 00:26:07.520
it might be a good thing, that would be a

00:26:07.520 --> 00:26:11.039
small amount of diversity,

00:26:11.039 --> 00:26:14.960
but it's not that important.

00:26:14.960 --> 00:26:16.960
What I think is really important for

00:26:16.960 --> 00:26:18.880
developing Emacs

00:26:18.880 --> 00:26:22.799
is to make it do word processing.

00:26:22.799 --> 00:26:27.039
I sometimes use LibreOffice,

00:26:27.039 --> 00:26:30.080
and yeah I can make it do things.

00:26:30.080 --> 00:26:32.799
It has features for WYSIWYG which are

00:26:32.799 --> 00:26:34.880
very nice,

00:26:34.880 --> 00:26:38.000
but it's in other regards,

00:26:38.000 --> 00:26:40.400
it's not Emacs, and it doesn't have the

00:26:40.400 --> 00:26:42.400
abilities of Emacs,

00:26:42.400 --> 00:26:45.600
and it should.

00:26:45.600 --> 00:26:48.400
So, I urge people to work on extending

00:26:48.400 --> 00:26:49.039
Emacs

00:26:49.039 --> 00:26:51.600
in that direction adding the features

00:26:51.600 --> 00:27:13.600
that a word processor has to have.

00:27:13.600 --> 00:27:17.957
The last question I can answer is 18.

00:27:17.957 --> 00:27:21.679
Yes, it's a very sad thing

00:27:21.679 --> 00:27:24.960
how many companies

00:27:24.960 --> 00:27:28.399
insist on using non-free software.

00:27:28.399 --> 00:27:33.200
Well, I would get a different kind of job,

00:27:33.200 --> 00:27:36.799
that's a decision I made many years ago

00:27:36.799 --> 00:27:40.320
early in the GNU project,

00:27:40.320 --> 00:27:42.799
I decided, I would not… first I would not

00:27:42.799 --> 00:27:47.679
get a job developing non-free software.

00:27:47.679 --> 00:27:50.960
And later on I decided,

00:27:50.960 --> 00:27:54.880
once I could stop using non-free

00:27:54.880 --> 00:27:57.120
software, that is once we had

00:27:57.120 --> 00:28:00.799
a GNU/Linux system that we could

00:28:00.799 --> 00:28:08.320
switch over to and…

00:28:08.320 --> 00:28:11.679
Oh, wait. I thought magic wand

00:28:11.679 --> 00:28:16.240
time meant it was time to stop,

00:28:16.240 --> 00:28:21.039
but now I rather ask the question.

00:28:27.760 --> 00:28:32.480
So, what do you do, well, if I were you,

00:28:32.480 --> 00:28:35.679
I'd probably not work for any of those

00:28:35.679 --> 00:28:37.440
companies.

00:28:37.440 --> 00:28:39.679
If I needed to make money, I'd get a job,

00:28:39.679 --> 00:28:40.799
but I get some

00:28:40.799 --> 00:28:43.840
other kind of job

00:28:43.840 --> 00:28:48.080
that didn't involve using software

00:28:48.080 --> 00:28:51.039
or that let me choose the

00:28:51.039 --> 00:28:53.600
software I would use.

00:28:53.600 --> 00:28:56.880
But I would live cheaply, you know, the

00:28:56.880 --> 00:28:58.000
less you spend,

00:28:58.000 --> 00:29:00.640
the less you need to make and the more

00:29:00.640 --> 00:29:01.120
time

00:29:01.120 --> 00:29:04.720
you can take away from your paid work

00:29:04.720 --> 00:29:07.200
and the more flexibility you have in

00:29:07.200 --> 00:29:08.640
which paid work

00:29:08.640 --> 00:29:13.039
you can do. Being in a position

00:29:13.039 --> 00:29:16.399
to say no to avoid being

00:29:16.399 --> 00:29:23.679
desperate to say yes

00:29:23.679 --> 00:29:27.440
strengthens your position,

00:29:27.440 --> 00:29:31.200
and you need that. One way you can help

00:29:31.200 --> 00:29:33.279
do that is by

00:29:33.279 --> 00:29:36.559
not having children. Now, that is a

00:29:36.559 --> 00:29:38.960
tangent, but it can't be denied that

00:29:38.960 --> 00:29:41.760
raising children is very expensive, I

00:29:41.760 --> 00:29:42.399
have heard

00:29:42.399 --> 00:29:45.559
many people say that they are

00:29:45.559 --> 00:29:48.080
uncomfortable with their jobs,

00:29:48.080 --> 00:29:50.880
but they have to do those jobs to make

00:29:50.880 --> 00:29:52.240
enough money

00:29:52.240 --> 00:29:55.440
to support their children.

00:29:55.440 --> 00:29:59.120
Well, think about that, be aware

00:29:59.120 --> 00:30:01.520
that's likely to happen to you, before

00:30:01.520 --> 00:30:06.159
you make that decision.

00:30:06.159 --> 00:30:13.279
"What would I change about free software?"

00:30:13.279 --> 00:30:16.960
Well, since this is

00:30:16.960 --> 00:30:20.880
magic, I would magically find

00:30:20.880 --> 00:30:25.600
a way of showing everyone why

00:30:25.600 --> 00:30:28.000
most free software needs to be copy

00:30:28.000 --> 00:30:29.679
lefted,

00:30:29.679 --> 00:30:32.480
so that our community would not

00:30:32.480 --> 00:30:34.880
basically

00:30:34.880 --> 00:30:38.640
submit to abuse by proprietary software

00:30:38.640 --> 00:30:45.919
developers.

00:30:45.919 --> 00:30:49.760
Of course, I could go further if I could

00:30:49.760 --> 00:30:53.279
magically recruit a hundred thousand

00:30:53.279 --> 00:30:55.760
good programmers to do lots of work

00:30:55.760 --> 00:30:57.919
improving free software.

00:30:57.919 --> 00:31:01.039
We might… Well, if we could do this 20

00:31:01.039 --> 00:31:03.279
years ago, we might have wiped out

00:31:03.279 --> 00:31:06.559
non-free systems, and then we wouldn't

00:31:06.559 --> 00:31:07.200
have had

00:31:07.200 --> 00:31:10.320
horrible things like

00:31:10.320 --> 00:31:14.480
World Wide Web DRM, that

00:31:14.480 --> 00:31:18.000
no one has the courage to resist

00:31:18.000 --> 00:31:20.480
if they're desperately trying to get

00:31:20.480 --> 00:31:22.640
money for anything,

00:31:22.640 --> 00:31:26.240
and if they need approval of companies,

00:31:26.240 --> 00:31:29.519
of the big companies that push for DRM,

00:31:29.519 --> 00:31:32.960
then they don't dare even resist as

00:31:32.960 --> 00:31:38.240
much as they can resist.

00:31:38.240 --> 00:31:40.880
And look what happened to the World Wide

00:31:40.880 --> 00:31:43.200
Web consortium,

00:31:43.200 --> 00:31:47.279
they surrendered blatantly

00:31:47.279 --> 00:31:50.399
and ignominiously by

00:31:50.399 --> 00:31:55.760
endorsing the DRM system.

00:31:55.760 --> 00:31:59.600
So what can you do? I don't have a magic

00:31:59.600 --> 00:32:00.880
wand,

00:32:00.880 --> 00:32:04.720
I'm a human being with the capabilities

00:32:04.720 --> 00:32:09.919
I have, but the advantage of

00:32:09.919 --> 00:32:12.840
great firmness in campaigning for free

00:32:12.840 --> 00:32:14.000
software,

00:32:14.000 --> 00:32:18.240
and this enables me to do things

00:32:18.240 --> 00:32:27.679
that no one else will do.

00:32:27.679 --> 00:32:30.480
"What tools from pre-UNIX days do you

00:32:30.480 --> 00:32:31.519
miss?"

00:32:31.519 --> 00:32:34.240
Well, I don't. I don't think about them

00:32:34.240 --> 00:32:38.640
with missing them actually.

00:32:38.640 --> 00:32:42.080
It was sort of nice to have

00:32:42.080 --> 00:32:46.240
ddt as your login shell.

00:32:46.240 --> 00:32:49.600
So, in using modern terminology,

00:32:49.600 --> 00:32:52.640
because that meant at any time you could

00:32:52.640 --> 00:32:55.519
stop a program, load its debugging symbols,

00:32:55.519 --> 00:32:57.519
and start examining the data in the

00:32:57.519 --> 00:32:58.799
instructions.

00:32:58.799 --> 00:33:01.519
You could debug it that way, and then you

00:33:01.519 --> 00:33:03.039
could even

00:33:03.039 --> 00:33:06.720
patch in instructions to continue

00:33:06.720 --> 00:33:09.760
running that job with the bug fixed,

00:33:09.760 --> 00:33:11.600
in fact, you could even do this with the

00:33:11.600 --> 00:33:13.919
system kernel,

00:33:13.919 --> 00:33:16.423
so that your jobs wouldn't get lost.

00:33:16.423 --> 00:33:17.840
I did that

00:33:17.840 --> 00:33:20.559
quite a few times, of course, sometimes I

00:33:20.559 --> 00:33:22.720
saw what was wrong, and I just had to

00:33:22.720 --> 00:33:25.919
fix a piece of data, but sometimes

00:33:25.919 --> 00:33:28.240
it took me a long time to figure out how

00:33:28.240 --> 00:33:29.679
to get the system to

00:33:29.679 --> 00:33:32.480
keep on going. But with the work I had

00:33:32.480 --> 00:33:34.240
done,

00:33:34.240 --> 00:33:39.279
I didn't want to lose that work,

00:33:39.279 --> 00:33:41.600
and, so one of the first features I put

00:33:41.600 --> 00:33:43.039
into GNU Emacs was

00:33:43.039 --> 00:33:47.760
auto save.

00:33:47.760 --> 00:33:50.640
I'm not going to try to figure out

00:33:50.640 --> 00:33:54.320
which packages I actually used.

00:33:54.320 --> 00:33:56.480
"If I knew, I would get hit by a bus

00:33:56.480 --> 00:33:59.039
tomorrow,

00:33:59.039 --> 00:34:02.320
say because of a fortune-teller."

00:34:02.320 --> 00:34:05.039
No, a fortune-teller doesn't give you any

00:34:05.039 --> 00:34:06.240
knowledge, it's just

00:34:06.240 --> 00:34:10.159
superstitious hand waving.

00:34:10.159 --> 00:34:13.760
So, assuming that I

00:34:13.760 --> 00:34:16.480
talked… that I got a reading from a

00:34:16.480 --> 00:34:18.879
fortune-teller, which is

00:34:18.879 --> 00:34:23.119
implausible enough to begin with,

00:34:23.119 --> 00:34:25.040
that wouldn't give me any knowledge

00:34:25.040 --> 00:34:28.320
about what was going to happen to me.

00:34:28.320 --> 00:34:32.879
Oh, by the way fortune-tellers generally

00:34:32.879 --> 00:34:34.960
play back to you facts that they've

00:34:34.960 --> 00:34:36.879
discovered about you

00:34:36.879 --> 00:34:40.480
together with cold reading, which means,

00:34:40.480 --> 00:34:43.440
they say things calculated to make it

00:34:43.440 --> 00:34:44.639
appear that they know

00:34:44.639 --> 00:34:49.119
more than they do or things that

00:34:49.119 --> 00:34:52.399
sound wise to anyone,

00:34:52.399 --> 00:34:55.679
so you can say the same thing to,

00:34:55.679 --> 00:34:58.800
say, 100 people

00:34:58.800 --> 00:35:02.000
and 80 or 90 of them will say, "boy that

00:35:02.000 --> 00:35:06.480
was really accurate".

00:35:06.480 --> 00:35:15.119
But what if for some reason…

00:35:15.119 --> 00:35:17.440
"What advice would I give for

00:35:17.440 --> 00:35:18.560
stewardship of

00:35:18.560 --> 00:35:25.359
Emacs?" Well, basically focus on

00:35:25.359 --> 00:35:28.480
keeping the community strong in

00:35:28.480 --> 00:35:29.280
defending

00:35:29.280 --> 00:35:32.640
freedom, if you have a choice between

00:35:32.640 --> 00:35:34.400
keeping the community strong in

00:35:34.400 --> 00:35:36.079
defending freedom

00:35:36.079 --> 00:35:38.800
and getting more people to participate

00:35:38.800 --> 00:35:40.720
in the development,

00:35:40.720 --> 00:35:42.890
you've got to choose the freedom.

00:35:42.890 --> 00:35:44.400
It is very

00:35:44.400 --> 00:35:48.400
easy for free software projects to

00:35:48.400 --> 00:35:52.320
subordinate freedom to other criteria,

00:35:52.320 --> 00:35:55.359
and once that happens, it's

00:35:55.359 --> 00:35:58.079
easy for those who don't care much about

00:35:58.079 --> 00:35:58.720
freedom,

00:35:58.720 --> 00:36:00.800
such as, sometimes companies that might

00:36:00.800 --> 00:36:02.640
offer you some money

00:36:02.640 --> 00:36:08.160
to purchase your soul,

00:36:08.160 --> 00:36:10.560
not that there are really things that

00:36:10.560 --> 00:36:14.240
exist called souls, it's a metaphor, but

00:36:14.240 --> 00:36:16.560
it's an important metaphor for something

00:36:16.560 --> 00:36:18.800
important.

00:36:18.800 --> 00:36:20.880
People in the community have to be

00:36:20.880 --> 00:36:24.320
thinking about freedom

00:36:24.320 --> 00:36:27.280
when they make decisions about what is

00:36:27.280 --> 00:36:31.839
wise to do.

00:36:31.839 --> 00:36:36.480
The decision to set up NonGNU ELPA

00:36:36.480 --> 00:36:39.357
has a drawback, it was a compromise.

00:36:39.357 --> 00:36:41.520
Now, a lot of people will

00:36:41.520 --> 00:36:44.560
tell you that I am uncompromising and

00:36:44.560 --> 00:36:46.240
say that, that's a flaw.

00:36:46.240 --> 00:36:48.720
Well, they're wrong. I make little

00:36:48.720 --> 00:36:50.320
compromises

00:36:50.320 --> 00:36:53.040
very often, and occasionally I make a

00:36:53.040 --> 00:36:55.359
medium-sized compromise.

00:36:55.359 --> 00:36:58.880
The compromise is, in the past we wanted

00:36:58.880 --> 00:36:59.359
to get

00:36:59.359 --> 00:37:01.599
copyright assignments for the packages

00:37:01.599 --> 00:37:03.823
in GNU ELPA,

00:37:03.823 --> 00:37:06.240
so that we could move them into

00:37:06.240 --> 00:37:09.119
core Emacs, and of course, sometimes we

00:37:09.119 --> 00:37:11.200
move packages in the other direction,

00:37:11.200 --> 00:37:14.480
that way where we distribute a

00:37:14.480 --> 00:37:16.160
given package,

00:37:16.160 --> 00:37:18.160
is something we can decide purely

00:37:18.160 --> 00:37:20.880
technically.

00:37:20.880 --> 00:37:25.200
And however make insisting on getting

00:37:25.200 --> 00:37:26.800
copyright assignments for all the

00:37:26.800 --> 00:37:28.640
packages in GNU ELPA

00:37:28.640 --> 00:37:32.079
meant that we had to say "sorry, no,

00:37:32.079 --> 00:37:35.119
we will not install that

00:37:35.119 --> 00:37:38.560
package in GNU ELPA, unless the

00:37:38.560 --> 00:37:40.957
authors sign copyright assignments".

00:37:40.957 --> 00:37:44.079
And sometimes that's a lot of trouble.

00:37:44.079 --> 00:37:47.520
Well, NonGNU ELPA

00:37:47.520 --> 00:37:50.123
won't require copyright assignments.

00:37:50.123 --> 00:37:51.520
If there's a free package,

00:37:51.520 --> 00:37:54.560
we can make whatever changes, presumably

00:37:54.560 --> 00:37:57.200
small, otherwise, we would probably say

00:37:57.200 --> 00:38:00.560
we don't have time, and then

00:38:00.560 --> 00:38:04.560
put it in. But it does have the drawback

00:38:04.560 --> 00:38:05.599
that,

00:38:05.599 --> 00:38:07.680
in general we won't be able to move

00:38:07.680 --> 00:38:09.119
those packages

00:38:09.119 --> 00:38:12.960
into core Emacs without

00:38:12.960 --> 00:38:14.960
getting the legal papers then that we

00:38:14.960 --> 00:38:20.160
didn't get before.

00:38:20.160 --> 00:38:24.320
"How do you see the future of GNU Emacs?"

00:38:24.320 --> 00:38:27.599
I don't see the future.

00:38:27.599 --> 00:38:29.839
I used to say that my crystal ball is

00:38:29.839 --> 00:38:31.680
cloudy today,

00:38:31.680 --> 00:38:35.680
unfortunately, that has another

00:38:35.680 --> 00:38:38.423
meaning which is quite ironic.

00:38:38.423 --> 00:38:41.200
We certainly don't want

00:38:41.200 --> 00:38:44.800
our lives to be

00:38:44.800 --> 00:38:48.480
somewhere in a cloud, because

00:38:48.480 --> 00:38:51.119
that clouds remind, and then people

00:38:51.119 --> 00:38:51.599
start

00:38:51.599 --> 00:38:54.240
cheating you and taking advantage of you,

00:38:54.240 --> 00:38:56.880
and it's horrible.

00:38:56.880 --> 00:39:00.160
But I don't see the future, I just

00:39:00.160 --> 00:39:02.720
can be sure from the past that there

00:39:02.720 --> 00:39:03.839
will be

00:39:03.839 --> 00:39:07.599
challenges where some of the people

00:39:07.599 --> 00:39:10.720
involved want to make a big compromise

00:39:10.720 --> 00:39:12.960
that isn't worth it,

00:39:12.960 --> 00:39:16.880
and they may even get the

00:39:16.880 --> 00:39:18.079
impression that it's

00:39:18.079 --> 00:39:21.200
up to them. Well, actually

00:39:21.200 --> 00:39:24.480
Emacs has appointed maintainers just as

00:39:24.480 --> 00:39:27.440
every GNU package does, and they are the

00:39:27.440 --> 00:39:29.280
ones in charge of developing that

00:39:29.280 --> 00:39:30.480
package,

00:39:30.480 --> 00:39:34.400
and this is for a good reason

00:39:34.400 --> 00:39:38.200
because the appointed maintainers take

00:39:38.200 --> 00:39:39.760
responsibility

00:39:39.760 --> 00:39:42.240
to carry out the GNU project policies,

00:39:42.240 --> 00:39:44.079
and most important of all

00:39:44.079 --> 00:39:46.160
are the ones that make the whole system

00:39:46.160 --> 00:39:47.520
work together,

00:39:47.520 --> 00:39:52.640
and the ethical standards

00:39:52.640 --> 00:39:59.920
to respect freedom and defend freedom.

00:39:59.920 --> 00:40:02.240
"Is there any plan to move more packages

00:40:02.240 --> 00:40:04.960
from core Emacs into ELPA?"

00:40:04.960 --> 00:40:08.480
I don't know

00:40:08.480 --> 00:40:11.440
whether there is a plan, I suppose if

00:40:11.440 --> 00:40:12.720
there's a plan,

00:40:12.720 --> 00:40:15.680
we probably would have done it. If there

00:40:15.680 --> 00:40:16.960
had been a plan,

00:40:16.960 --> 00:40:18.657
some have been moved.

00:40:18.657 --> 00:40:20.319
I don't see this as a

00:40:20.319 --> 00:40:22.400
fundamentally important issue, it's a

00:40:22.400 --> 00:40:24.160
matter of what's convenient for

00:40:24.160 --> 00:40:26.640
the users, and their advantages and

00:40:26.640 --> 00:40:29.599
disadvantages to each choice.

00:40:29.599 --> 00:40:32.800
"What is your opinion on higher education

00:40:32.800 --> 00:40:35.760
requiring non-free software, for

00:40:35.760 --> 00:40:36.720
instance…"

00:40:36.720 --> 00:40:40.400
Well, I wouldn't

00:40:40.400 --> 00:40:43.440
matriculate in a school which did that,

00:40:43.440 --> 00:40:50.960
unless I saw a way I could refuse.

00:40:50.960 --> 00:40:54.960
Now, of course, I do this

00:40:54.960 --> 00:40:57.760
because I can get away with it, and

00:40:57.760 --> 00:41:00.240
therefore my doing it is extremely

00:41:00.240 --> 00:41:04.960
important to show somebody does resist.

00:41:04.960 --> 00:41:08.400
I don't expect most people who support

00:41:08.400 --> 00:41:09.359
free school,

00:41:09.359 --> 00:41:12.319
who advocate free software to go that

00:41:12.319 --> 00:41:13.599
far.

00:41:13.599 --> 00:41:17.760
I published an article in the spring

00:41:17.760 --> 00:41:21.040
entitled saying no even once

00:41:21.040 --> 00:41:24.640
is helping, saying no to non-free

00:41:24.640 --> 00:41:25.359
software

00:41:25.359 --> 00:41:29.040
even once, because

00:41:29.040 --> 00:41:32.240
the more you do it, the more you help, but

00:41:32.240 --> 00:41:34.640
even doing it a little in a way that

00:41:34.640 --> 00:41:36.640
other people notice,

00:41:36.640 --> 00:41:39.920
is starting to help. So,

00:41:39.920 --> 00:41:43.440
please don't think that your choices

00:41:43.440 --> 00:41:45.119
are either

00:41:45.119 --> 00:41:48.480
be as firm and stubborn as I am

00:41:48.480 --> 00:41:52.240
or just give up and let yourself drift

00:41:52.240 --> 00:41:56.240
helplessly as if you had no volition.

00:41:56.240 --> 00:41:58.079
There are a lot of points in between

00:41:58.079 --> 00:42:00.720
there, and you can surely

00:42:00.720 --> 00:42:04.079
manage to say no some of the time

00:42:04.079 --> 00:42:07.839
and show people an example of saying no

00:42:07.839 --> 00:42:11.040
some of the time, for instance, you could

00:42:11.040 --> 00:42:12.720
say to people,

00:42:12.720 --> 00:42:15.520
"You know I hate the fact that my school

00:42:15.520 --> 00:42:16.000
makes me

00:42:16.000 --> 00:42:20.400
use Zoom, so whenever

00:42:20.400 --> 00:42:22.240
I'm not being forced, I'm not going to

00:42:22.240 --> 00:42:25.760
use it".

00:42:25.760 --> 00:42:29.200
Or "I hate the fact that the only way I

00:42:29.200 --> 00:42:31.200
can talk to that group of people

00:42:31.200 --> 00:42:35.200
is with Zoom,

00:42:35.200 --> 00:42:38.400
but for anything else I will feel better

00:42:38.400 --> 00:42:40.079
about myself if I don't".

00:42:40.079 --> 00:42:42.880
See, lots of ways to say no some of the

00:42:42.880 --> 00:42:44.000
time,

00:42:44.000 --> 00:42:47.040
and yield some of the time,

00:42:47.040 --> 00:42:50.960
and when you try saying no occasionally,

00:42:50.960 --> 00:42:53.920
you may just develop the ability to say

00:42:53.920 --> 00:42:56.400
no more often.

00:42:56.400 --> 00:42:58.800
Now, whether you would ever get to be as

00:42:58.800 --> 00:43:00.640
stubborn as I am?

00:43:00.640 --> 00:43:04.480
I don't know, but what I find is that

00:43:04.480 --> 00:43:08.480
I like the fact that I've never made

00:43:08.480 --> 00:43:12.480
this kind of compromise.

00:43:12.480 --> 00:43:15.839
I feel I have a reputation to maintain,

00:43:15.839 --> 00:43:19.319
nobody's forcing me, but I get

00:43:19.319 --> 00:43:21.119
satisfaction

00:43:21.119 --> 00:43:24.319
out of maintaining…, out of being able to

00:43:24.319 --> 00:43:26.400
continue to say

00:43:26.400 --> 00:43:30.880
I will not.

00:43:30.880 --> 00:43:34.480
And that also

00:43:34.480 --> 00:43:40.480
can happen at various different levels,

00:43:40.480 --> 00:43:43.520
so, you can get that satisfaction

00:43:43.520 --> 00:43:46.640
of fully maintaining a refusal

00:43:46.640 --> 00:43:54.400
that applies only to certain areas.

00:43:54.400 --> 00:43:57.040
(Amin: since it's noon already, let's maybe

00:43:57.040 --> 00:43:58.880
take one or two more questions and then

00:43:58.880 --> 00:43:59.599
break for

00:43:59.599 --> 00:44:03.200
the lunch break) Okay. (Amin: Thank you).

00:44:03.200 --> 00:44:05.757
"How often do you personally use Emacs?"

00:44:05.757 --> 00:44:10.640
is the lowest question now.

00:44:10.640 --> 00:44:16.640
Well, I use it most of the day.

00:44:16.640 --> 00:44:18.880
I occasionally do use other things, in

00:44:18.880 --> 00:44:20.160
fact, I occasionally edit with

00:44:20.160 --> 00:44:21.599
LibreOffice,

00:44:21.599 --> 00:44:24.240
I occasionally use media players,

00:44:24.240 --> 00:44:32.480
I occasionally ssh to a machine and type

00:44:32.480 --> 00:44:34.000
some commands on it,

00:44:34.000 --> 00:44:35.440
which occasionally includes running

00:44:35.440 --> 00:44:42.319
Emacs on it.

00:44:42.319 --> 00:44:45.760
I read PDF files a lot,

00:44:45.760 --> 00:44:47.520
would be nice if you could get those

00:44:47.520 --> 00:44:49.599
into Emacs, so that I could read them

00:44:49.599 --> 00:44:52.240
with Emacs commands,

00:44:52.240 --> 00:44:55.040
and I maybe even edit them with the Emacs

00:44:55.040 --> 00:44:56.160
commands

00:44:56.160 --> 00:44:59.440
when they can be edited. I use

00:44:59.440 --> 00:45:02.960
Xournal sometimes

00:45:02.960 --> 00:45:10.079
to write on a PDF file.

00:45:10.079 --> 00:45:12.160
"Are there any more interesting projects

00:45:12.160 --> 00:45:13.760
you have in mind over and above

00:45:13.760 --> 00:45:18.400
NonGNU ELPA?"

00:45:18.400 --> 00:45:22.079
I can't think of one right now, well,

00:45:22.079 --> 00:45:25.520
there are things that

00:45:25.520 --> 00:45:27.119
the GNU project needs

00:45:27.119 --> 00:45:30.560
doing, there are packages that don't have

00:45:30.560 --> 00:45:32.319
maintainers or could use

00:45:32.319 --> 00:45:35.839
more maintainers.

00:45:35.839 --> 00:45:38.880
Talk with maintainers@gnu.org,

00:45:38.880 --> 00:45:42.000
and the assistant GNUisances will

00:45:42.000 --> 00:45:44.960
help you find a package where you can do

00:45:44.960 --> 00:45:48.400
good.

00:45:48.400 --> 00:45:50.560
Not for beginners though,

00:45:50.560 --> 00:45:52.079
you got to learn

00:45:52.079 --> 00:45:55.599
a substantive substantial level of

00:45:55.599 --> 00:45:58.160
capacity to develop and debug programs

00:45:58.160 --> 00:45:59.440
before you can

00:45:59.440 --> 00:46:00.823
be a maintainer.

00:46:00.823 --> 00:46:04.480
"Have I ever looked at Magit?"

00:46:04.480 --> 00:46:08.400
No, I haven't,

00:46:08.400 --> 00:46:11.920
but I believe

00:46:11.920 --> 00:46:14.880
work is being done to get it put into

00:46:14.880 --> 00:46:16.560
Emacs,

00:46:16.560 --> 00:46:22.240
and at that point I'll give it a try.

00:46:22.240 --> 00:46:25.200
I do not want to share my configuration

00:46:25.200 --> 00:46:29.520
files they're personal.

00:46:29.520 --> 00:46:33.599
How about if we end this now?

00:46:33.599 --> 00:46:36.880
(Amin: sounds good to me,

00:46:36.880 --> 00:46:38.880
thank you very much Richard for joining

00:46:38.880 --> 00:46:41.520
in for live questions.)

00:46:41.520 --> 00:46:43.839
Okay.