11 ms·
How Emacs changed my life
- jff 13y agoAh, that explains Ruby's concurrency situation. (It's a joke, I understand the difficulty involved with concurrency in interpreted languages. But given that both Elisp and Ruby are well-known for having trouble with threading, well, too hard to pass up!)
- btilly 13y agoActually there is nothing about interpreted languages which makes concurrency particularly difficult other than their history. As an extreme example, you can run Erlang as an interpreted language and concurrency will not be a problem.
- jfinub 13y ago'then i started using ruby' subconsciously presses >> 'thank you.'
- btilly 13y agoYou misunderstood what he meant by, I started Ruby development. That's the creator of the Ruby language. That's when he started developing it.
- diadara 13y agoit's you, who misunderstood him
- EpicEng 13y agoNote that this person 'started ruby development' in 1993...
- gauravpandey 13y agoYeah that is what is most important here...
- yelnatz 13y agoHe made Ruby. https://en.wikipedia.org/wiki/Yukihiro_Matsumoto https://en.wikipedia.org/wiki/Yukihiro_Matsumoto
- D9u 13y ago75 slides to convey an impression which could have been spelled out in a paragraph or two... Anyone with a slow connection knows what I'm upset about. Needless to say, I quit when I was about 24 slides into the presentation.
- ivanbrussik 13y agowould have rather read this presentation in Emacs in 1 paragraph than 75 slides.
- throwaway_yy2Di 13y agoHere's a transcript for you! (Made with Emacs, appropriately). How Emacs changed my Life Yukihiro "Matz" Matsumoto @yukihiro_matz 1980 I started programming BASIC 400 steps 1988 I met Emacs on Sun-3 shared by 200 undergraduates I tried Emacs but I never used Emacs was prohibited It consumed too much precious memory We are free to download free software We are free to read the source code I downloaded Emacs source code and investigated Emacs was my first Lisp interpreter I learned a lot about language implementation from Emacs Embedding integers in pointers Mark and sweep garbage collection Calling convention between Lisp and C I really understood how Lisp work I was fascinated by Lisp objects Lisp objects implemented by C Then I got a Sparc Station I started to use Emacs Emacs become part of me If I didnt like anything in Emacs, I could change it Emacs is totally configurable Emacs made me realize anything can be changed by a programmer It is total freedom I could edit without thinking key binding I didnt want to write anything without Emacs Programs, Documents and Mails so I wrote my own mail client named "cmail" in Emacs lisp It was my first non-trivial (Emacs) Lisp program I used it everyday 1993 I started Ruby development with influence from Emacs implementation Integers are coded in tagged pointers It uses simple mark andsweep garbage collector It uses similar object model to Lisp Then I put Smalltalk-like OO system on top For syntax, I wanted Algol/Ada/ Eiffel like one But as an Emacs addict, I needed a language mode auto-indent was a must 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 fighting with emacs lisp and regular expression, for almost whole week I somehow succeeded to implement auto-indentation for a language with "end" delimiters If I couldnt make ruby-mode to work the syntax of Ruby would have changed to more C-like one too similar to other scripting languages as a result, Ruby would nothave gained current popularity Summary 1. Emacs taught me freedom for software 2. Emacs taught me how to read code 3. Emacs taught me power of Lisp 4. Emacs taught me how to implement a language core 5. Emacs taught me how to implement a garbage collector 6. Emacs helped me to code and debug 7. Emacs helped me to writeand edit text/mails/documents 8. Emacs helped me to be a effective programmer 9. Emacs made me a hacker 10. Emacs has changed my life forever Thank you
- mirsadm 13y agoThat was really really annoying and pointless. Why has this been up voted?
- primelens 13y agoI think it's a tutorial in disguise - about how not to make slideshows.
- ivanbrussik 13y agobecause it has a cool title
- jf 13y agoThis slideshow carries weight because it was written by the chief designer of the Ruby programming language.
- clicks 13y agoBecause it's a poetic, hacker'ish celebration of something that all --err, some of us love so dearly.
- 10098 13y agoI agree. This presentation sucks because it could be written as a simple paragraph of text. There is no need for slides. It was upvoted only because it's by Yukihiro Matzumoto, the author of Ruby programming language.
- _pmf_ 13y ago
- optimusclimb 13y agoWhat's awesome is how all of us can probably attribute similar life changes to various software discoveries. Though it's much weaker than saying "emacs influenced the massively adopted programming language I went on to write"...in many ways, having a computer that, as is - was unable to run Doom - led me to understand good old autoexec.bat and config.sys, what extended memory and himem.sys were, mouse drivers, etc, etc. On the emacs front - emacs lead me to realize how useless the capslock key was, rebind it to Ctrl on all of my computers, and forever make numerous typing mistakes whenever I use someone else's keyboard :) Worth it. Good little read.
- pseut 13y agoI've never understood the caps lock/control switch; swapping the ctrl and alt on one side of the keyboard just feels so much more natural to me: left thumb is alt, right thumb is ctrl.
- tempestn 13y agoIt seems extremely awkward to me to be regularly trying to hit alts with your thumbs. In a normal typing position your thumbs rest near the middle of the spacebar. That's quite a reach, under your hand, which is trying to hit another key at the same time. Definitely worse than hitting ctrl with a pinky, at least for me.
- danneu 13y agoYeah, tucking your thumb to hit anything left of the spacebar does not sound like a solid RSI-prevention game plan. Caps Lock to Ctrl (when pressed with another button) and Esc (when pressed alone) is one of the most efficient workflow optimizations I know of, even for regular computer use. The usual plug (for OSX): 1. Set CapsLock to Control: System Preferences -> Keyboard -> Modifier Keys... -> http://i.imgur.com/joR19Hj.png 2. Get KeyRemap4MacBook: https://pqrs.org/macosx/keyremap4macbook/ 3. Make this change: http://i.imgur.com/61lmhZ5.png
- tbirdz 13y ago
- davexunit 13y agoMatz gave this presentation at LibrePlanet 2012 in Boston. This talk was the reaason that I decided to give Emacs a shot after being a Vim user for a couple of years. I have used Emacs every day since. I talked briefly with Matz afterwards and he was very friendly and pleasant to chat with. There should be audio of this presentation to go along with the slides somewhere, but I couldn't quickly locate it.
- blacktulip 13y agoHow do you feel about emacs? I am a long time vim user too. I want to hear some testimonies before investing in emacs.
- davexunit 13y agoI love Emacs. I'm much happier now that I live in Emacs. I work on a Ruby on Rails application at work and I use Emacs not only to write code but to run tests, use the rails console, use the MySQL console, bundle update, use git, etc. Let's not forget the amount of customization possible with Emacs Lisp. Editing your editor is a pretty great experience. If you work with any other Lisps, Emacs is the editor to use. I don't read my email in Emacs like some people, but I do use it for IRC and it works quite well. I could "evangelize" more, but I've done enough. Give it a shot. Figure out which editor you like more. If you stick with Emacs, be prepared for a weird adjustment period where your hands get really confused and you start mixing up Vim and Emacs key bindings. :)
- Derbasti 13y agoCouldn't have said it better.
- papaf 13y agoI use both vim or Emacs depending on the task. Evil mode gives the vim key mappings and makes the transition mostly painless. I'd also recommend using IDO. For me this is one of the best things about Emacs.
- davecyen 13y agoSelf admittedly, I'm a newb at coding but I've tried emacs and am not a fan. I get the benefits of being able to debug and execute code immediately in the REPL, but I would much rather write code in sublime text or any other text editor. The last thing I want to do when I'm writing code is try to remember some obscure combination of keys in order to perform a simple backspace or copy and paste a line of code. Have not been convinced otherwise yet, maybe someone here can better enlighten me
- deleted 13y ago[deleted]
- tincholio 13y ago>The last thing I want to do when I'm writing code is try to remember some obscure combination of keys in order to perform a simple backspace or copy and paste a line of code. That makes me think that you really haven't tried Emacs. Backspace is just backspace. Copying and pasting is not too different than what you'd use in other software (but it can be, in many awesome ways). Do the tutorial, start using it daily, focus on the stuff you really need. The rest comes along on its own.
- xentronium 13y ago> Backspace is just backspace Unless you're on the wrong terminal. (google "emacs fix backspace") Besides, it's really a big deal that most applications in your system use one set of hotkeys, while bash and emacs use a totally different one.
- claudius 13y agoWhat other applications are there on a system but Bash and Emacs? :P Besides, you can tell GTK to use Emacs-y keybindings rather than the ‘standard’ C-v, C-x, C-c.
- pjmlp 13y ago> What other applications are there on a system but Bash and Emacs? :P I remember the days when it was just sh/ksh and vi in any commercial UNIX flavor.
- Lapsa 13y agovim is amazing indeed. changed my life too.
- hannibal5 13y ago"Why do we have to hide from the police, Daddy?" "Because we use vi, son. They use emacs."
- gneis 13y agoAnyone know if the Emacs source code still is a "good read"? …or has it grown too much
- justinhj 13y agoI read the emacs lisp code quite often. It's very nicely documented and easy to read in general.
- lispm 13y agoAs a Lisp implementation Emacs Lisp was pretty primitive then: * primitive GC * only dynamic binding (Stallman sold that as a feature) * no nested functions * no threads * no object system * no namespaces for symbols * implementation not independent from the editor * no TCO * slow On the positive side it already had a simple byte code interpreter with a compiler for it and it was fast enough for some editing. Also, dedicated Emacs Lisp users managed to write some amazing code - given the restrictions. The 'eight megabytes and constantly swapping' thing now is also of less importance. ;-)
- bitdiddle 13y agoEmacs, imho, will get a whole lot better when it runs on Guile[1]. This was a great presentation. I've been using emacs since the mid-eighties, it's so easily programmable that hackers are always hacking new things for it, so it keeps up with the latest fashion. [1] http://lists.gnu.org/archive/html/guile-user/2013-07/msg00065.html http://lists.gnu.org/archive/html/guile-user/2013-07/msg0006...
- aryastark 13y agoNot sure about that. Guile is pretty old and messy itself. It's still my preferred Scheme, though. But that's mostly just because of familiarity and loyalty on my part. There is already Edwin, which comes with MIT-Scheme. It's Emacs written in Scheme. It never took off, and most don't even know about it.
- rml 13y agoI love Edwin! It's my favorite Emacs implementation, even though I don't get to use it as much as I'd like. It even has a nice email client, IMAIL, written using a beautiful object-oriented style. Many years of Scheme wizardry lives in there, I need to spend more time studying it.
- kenko 13y agoWhoa, is that really happening? It seems as if people having been talking about it/pushing for it for ages.
- systems 13y agoi think people are being too harsh on this presentation, and focused too much on the form factor and number of slides , instead of the actual content and message i like the human factor in it, like how random and incidental stuff like being able to complete ruby-mode.el had such a high impact on ruby's syntax and how learning a text editor inside out, eventually led to ruby, which let to RoR , most people would consider learning so much about emacs as a waste of time, for matz it helped him made ruby this presentation is more about our human nature , this is i believe a great exmaple of when doing what you love is more important that doing whats important or what you think is right, i like it
- blacktulip 13y agoSomeone told me this is called "Takahashi method"[1] [1] http://en.wikipedia.org/wiki/Takahashi_method http://en.wikipedia.org/wiki/Takahashi_method
- mathattack 13y agoIt's hard to go bad on this article given the source, no? I find it more interesting for insight into Matz than anything about emacs. The idea that his text editor got him excited about programming is pretty powerful. Yes it could have been written in a 1 page memo, but who cares?
- hannibal5 13y agoCalling emacs text editor is huge understatement.
- mathattack 13y agoI meant it with some irony. As in, "What appears to be a mere text editor..."
- deleted 13y ago[deleted]
- samwilliams 13y agoWhile it is almost always nicer to have videos attached to slideshows, I am quite sure we would miss out on plenty of excellent content if this idea was implemented. After all, you only see so many videoless slideshows here because your peers have found, enjoyed, submitted and up voted them...
- deleted 13y ago[deleted]
- tel 13y agoThe fact the Ruby syntax was mostly derived by what could be made to have auto-indentation in regex in a week in emacslisp is interesting. More than that, it's interesting that Matz seems to ascribe a lot of Ruby's success to it. If I couldn't make ruby-mode to work the syntax of Ruby would have changed to more C-like one too similar to other scripting languages as a result, Ruby would not have gained current popularity I've heard that Ruby's parsing code is especially difficult to replicate.
- oskarkv 13y agoHe says he understood the power of Lisp, yet he made a non-Lisp language. :P I don't get people who make non-Lisp languages.
- gkya 13y agoIs there a video of this presentation somewhere? Would love to see it.