How Emacs changed     my Life  Yukihiro "Matz" Matsumoto       @yukihiro_matz                              Powered by Rabb...
 1980              1/74       Powered by Rabbit 0.9.2
 I started programming                               2/74                        Powered by Rabbit 0.9.2
            3/74    Powered by Rabbit 0.9.2
 BASIC               4/74        Powered by Rabbit 0.9.2
 400 steps                   5/74            Powered by Rabbit 0.9.2
 1988              6/74       Powered by Rabbit 0.9.2
 I met Emacs                     7/74              Powered by Rabbit 0.9.2
 on Sun-3                  8/74           Powered by Rabbit 0.9.2
 shared by 200 undergraduates                                9/74                         Powered by Rabbit 0.9.2
 I tried Emacs                     10/74                Powered by Rabbit 0.9.2
 but I never used                        11/74                   Powered by Rabbit 0.9.2
 Emacs was prohibited                            12/74                       Powered by Rabbit 0.9.2
 It consumed too much   precious memory                            13/74                       Powered by Rabbit 0.9.2
 We are free to download free          software                               14/74                          Powered by Ra...
 We are free to read the source             code                                15/74                           Powered by...
 I downloaded Emacs source           code                            16/74                       Powered by Rabbit 0.9.2
 and investigated                        17/74                   Powered by Rabbit 0.9.2
 Emacs was my first Lisp     interpreter                              18/74                         Powered by Rabbit 0.9.2
 I learned a lot about language  implementation from Emacs                                19/74                           ...
 Embedding integers in     pointers                             20/74                        Powered by Rabbit 0.9.2
 Mark and sweep garbage       collection                              21/74                         Powered by Rabbit 0.9.2
 Calling convention between         Lisp and C                             22/74                        Powered by Rabbit ...
 I really understood how Lisp            work                               23/74                          Powered by Rabb...
 I was fascinated by Lisp         objects                                24/74                           Powered by Rabbit...
 Lisp objects implemented by C                               25/74                          Powered by Rabbit 0.9.2
 Then I got a Sparc Station                              26/74                         Powered by Rabbit 0.9.2
 I started to use Emacs                              27/74                         Powered by Rabbit 0.9.2
 Emacs become part of me                           28/74                      Powered by Rabbit 0.9.2
 If I didnt like anything inEmacs, I could change it                                    29/74                             ...
 Emacs is totally configurable                               30/74                          Powered by Rabbit 0.9.2
    Emacs made me realizeanything can be changed by a        programmer                              31/74                ...
 It is total freedom                           32/74                      Powered by Rabbit 0.9.2
 I could edit without thinking         key binding                                33/74                           Powered ...
 I didnt want to write anything         without Emacs                                 34/74                            Pow...
 Programs, Documents and          Mails                           35/74                      Powered by Rabbit 0.9.2
 so I wrote my own mail client                                36/74                           Powered by Rabbit 0.9.2
 named "cmail"                     37/74                Powered by Rabbit 0.9.2
 in Emacs lisp                     38/74                Powered by Rabbit 0.9.2
 It was my first non-trivial  (Emacs) Lisp program                                  39/74                             Power...
 I used it everyday                          40/74                     Powered by Rabbit 0.9.2
 1993            41/74       Powered by Rabbit 0.9.2
 I started Ruby development                             42/74                        Powered by Rabbit 0.9.2
 with influence from Emacs      implementation                            43/74                       Powered by Rabbit 0.9.2
 Integers are coded in tagged          pointers                               44/74                          Powered by Ra...
 It uses simple mark andsweep garbage collector                               45/74                          Powered by Ra...
 It uses similar object model to              Lisp                                 46/74                            Powere...
 Then I put Smalltalk-like OO       system on top                               47/74                          Powered by ...
 For syntax, I wanted Algol/Ada/         Eiffel like one                                 48/74                            P...
   But as an Emacs addict,I needed a language mode                             49/74                        Powered by Rab...
 auto-indent was a must                              50/74                         Powered by Rabbit 0.9.2
 Back in 1993, there was no auto-indenting language mode for a language with        such syntax                           ...
 So I tried to write experimental          ruby-mode.el                                  52/74                            ...
 fighting with emacs lisp and    regular expression,                              53/74                         Powered by ...
 for almost whole week                             54/74                        Powered by Rabbit 0.9.2
   I somehow succeeded toimplement auto-indentation                             55/74                        Powered by Ra...
 for a language with "end"         delimiters                             56/74                        Powered by Rabbit 0...
 If I couldnt make ruby-mode            to work                               57/74                          Powered by Ra...
 the syntax of Ruby would      have changed                                58/74                           Powered by Rabb...
 to more C-like one                          59/74                     Powered by Rabbit 0.9.2
 too similar to other scripting         languages                                 60/74                            Powered...
   as a result, Ruby would nothave gained current popularity                                61/74                         ...
 Summary               62/74          Powered by Rabbit 0.9.2
 1. Emacs taught me freedom        for software                             63/74                        Powered by Rabbit...
 2. Emacs taught me how to        read code                             64/74                        Powered by Rabbit 0.9.2
 3. Emacs taught me power of            Lisp                              65/74                         Powered by Rabbit ...
 4. Emacs taught me how toimplement a language core                             66/74                        Powered by Ra...
   5. Emacs taught me how toimplement a garbage collector                               67/74                          Pow...
 6. Emacs helped me to code        and debug                             68/74                        Powered by Rabbit 0....
  7. Emacs helped me to writeand edit text/mails/documents                               69/74                          Po...
 8. Emacs helped me to be a   effective programmer                             70/74                        Powered by Rabb...
 9. Emacs made me a hacker                            71/74                       Powered by Rabbit 0.9.2
 10. Emacs has changed my life                               72/74                          Powered by Rabbit 0.9.2
 forever               73/74          Powered by Rabbit 0.9.2
 Thank you                 74/74            Powered by Rabbit 0.9.2
Upcoming SlideShare
Loading in...5
×

How Emacs changed my life

129,933

Published on

Published in: Technology, Self Improvement
15 Comments
204 Likes
Statistics
Notes
No Downloads
Views
Total Views
129,933
On Slideshare
0
From Embeds
0
Number of Embeds
30
Actions
Shares
0
Downloads
736
Comments
15
Likes
204
Embeds 0
No embeds

No notes for slide

How Emacs changed my life

  1. 1. How Emacs changed my Life Yukihiro "Matz" Matsumoto @yukihiro_matz Powered by Rabbit 0.9.2
  2. 2.  1980 1/74 Powered by Rabbit 0.9.2
  3. 3.  I started programming 2/74 Powered by Rabbit 0.9.2
  4. 4.   3/74 Powered by Rabbit 0.9.2
  5. 5.  BASIC 4/74 Powered by Rabbit 0.9.2
  6. 6.  400 steps 5/74 Powered by Rabbit 0.9.2
  7. 7.  1988 6/74 Powered by Rabbit 0.9.2
  8. 8.  I met Emacs 7/74 Powered by Rabbit 0.9.2
  9. 9.  on Sun-3 8/74 Powered by Rabbit 0.9.2
  10. 10.  shared by 200 undergraduates 9/74 Powered by Rabbit 0.9.2
  11. 11.  I tried Emacs 10/74 Powered by Rabbit 0.9.2
  12. 12.  but I never used 11/74 Powered by Rabbit 0.9.2
  13. 13.  Emacs was prohibited 12/74 Powered by Rabbit 0.9.2
  14. 14.  It consumed too much precious memory 13/74 Powered by Rabbit 0.9.2
  15. 15.  We are free to download free software 14/74 Powered by Rabbit 0.9.2
  16. 16.  We are free to read the source code 15/74 Powered by Rabbit 0.9.2
  17. 17.  I downloaded Emacs source code 16/74 Powered by Rabbit 0.9.2
  18. 18.  and investigated 17/74 Powered by Rabbit 0.9.2
  19. 19.  Emacs was my first Lisp interpreter 18/74 Powered by Rabbit 0.9.2
  20. 20.  I learned a lot about language implementation from Emacs 19/74 Powered by Rabbit 0.9.2
  21. 21.  Embedding integers in pointers 20/74 Powered by Rabbit 0.9.2
  22. 22.  Mark and sweep garbage collection 21/74 Powered by Rabbit 0.9.2
  23. 23.  Calling convention between Lisp and C 22/74 Powered by Rabbit 0.9.2
  24. 24.  I really understood how Lisp work 23/74 Powered by Rabbit 0.9.2
  25. 25.  I was fascinated by Lisp objects 24/74 Powered by Rabbit 0.9.2
  26. 26.  Lisp objects implemented by C 25/74 Powered by Rabbit 0.9.2
  27. 27.  Then I got a Sparc Station 26/74 Powered by Rabbit 0.9.2
  28. 28.  I started to use Emacs 27/74 Powered by Rabbit 0.9.2
  29. 29.  Emacs become part of me 28/74 Powered by Rabbit 0.9.2
  30. 30.  If I didnt like anything inEmacs, I could change it 29/74 Powered by Rabbit 0.9.2
  31. 31.  Emacs is totally configurable 30/74 Powered by Rabbit 0.9.2
  32. 32.   Emacs made me realizeanything can be changed by a programmer 31/74 Powered by Rabbit 0.9.2
  33. 33.  It is total freedom 32/74 Powered by Rabbit 0.9.2
  34. 34.  I could edit without thinking key binding 33/74 Powered by Rabbit 0.9.2
  35. 35.  I didnt want to write anything without Emacs 34/74 Powered by Rabbit 0.9.2
  36. 36.  Programs, Documents and Mails 35/74 Powered by Rabbit 0.9.2
  37. 37.  so I wrote my own mail client 36/74 Powered by Rabbit 0.9.2
  38. 38.  named "cmail" 37/74 Powered by Rabbit 0.9.2
  39. 39.  in Emacs lisp 38/74 Powered by Rabbit 0.9.2
  40. 40.  It was my first non-trivial (Emacs) Lisp program 39/74 Powered by Rabbit 0.9.2
  41. 41.  I used it everyday 40/74 Powered by Rabbit 0.9.2
  42. 42.  1993 41/74 Powered by Rabbit 0.9.2
  43. 43.  I started Ruby development 42/74 Powered by Rabbit 0.9.2
  44. 44.  with influence from Emacs implementation 43/74 Powered by Rabbit 0.9.2
  45. 45.  Integers are coded in tagged pointers 44/74 Powered by Rabbit 0.9.2
  46. 46.  It uses simple mark andsweep garbage collector 45/74 Powered by Rabbit 0.9.2
  47. 47.  It uses similar object model to Lisp 46/74 Powered by Rabbit 0.9.2
  48. 48.  Then I put Smalltalk-like OO system on top 47/74 Powered by Rabbit 0.9.2
  49. 49.  For syntax, I wanted Algol/Ada/ Eiffel like one 48/74 Powered by Rabbit 0.9.2
  50. 50.   But as an Emacs addict,I needed a language mode 49/74 Powered by Rabbit 0.9.2
  51. 51.  auto-indent was a must 50/74 Powered by Rabbit 0.9.2
  52. 52.  Back in 1993, there was no auto-indenting language mode for a language with such syntax 51/74 Powered by Rabbit 0.9.2
  53. 53.  So I tried to write experimental ruby-mode.el 52/74 Powered by Rabbit 0.9.2
  54. 54.  fighting with emacs lisp and regular expression, 53/74 Powered by Rabbit 0.9.2
  55. 55.  for almost whole week 54/74 Powered by Rabbit 0.9.2
  56. 56.   I somehow succeeded toimplement auto-indentation 55/74 Powered by Rabbit 0.9.2
  57. 57.  for a language with "end" delimiters 56/74 Powered by Rabbit 0.9.2
  58. 58.  If I couldnt make ruby-mode to work 57/74 Powered by Rabbit 0.9.2
  59. 59.  the syntax of Ruby would have changed 58/74 Powered by Rabbit 0.9.2
  60. 60.  to more C-like one 59/74 Powered by Rabbit 0.9.2
  61. 61.  too similar to other scripting languages 60/74 Powered by Rabbit 0.9.2
  62. 62.   as a result, Ruby would nothave gained current popularity 61/74 Powered by Rabbit 0.9.2
  63. 63.  Summary 62/74 Powered by Rabbit 0.9.2
  64. 64.  1. Emacs taught me freedom for software 63/74 Powered by Rabbit 0.9.2
  65. 65.  2. Emacs taught me how to read code 64/74 Powered by Rabbit 0.9.2
  66. 66.  3. Emacs taught me power of Lisp 65/74 Powered by Rabbit 0.9.2
  67. 67.  4. Emacs taught me how toimplement a language core 66/74 Powered by Rabbit 0.9.2
  68. 68.   5. Emacs taught me how toimplement a garbage collector 67/74 Powered by Rabbit 0.9.2
  69. 69.  6. Emacs helped me to code and debug 68/74 Powered by Rabbit 0.9.2
  70. 70.   7. Emacs helped me to writeand edit text/mails/documents 69/74 Powered by Rabbit 0.9.2
  71. 71.  8. Emacs helped me to be a effective programmer 70/74 Powered by Rabbit 0.9.2
  72. 72.  9. Emacs made me a hacker 71/74 Powered by Rabbit 0.9.2
  73. 73.  10. Emacs has changed my life 72/74 Powered by Rabbit 0.9.2
  74. 74.  forever 73/74 Powered by Rabbit 0.9.2
  75. 75.  Thank you 74/74 Powered by Rabbit 0.9.2
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×