Hacker News new | past | comments | ask | show | jobs | submit login
The Emacs 30 Day Challenge (mostlymaths.net)
59 points by tomh on April 15, 2011 | hide | past | favorite | 15 comments



I love my Emacs and everything, but some things are best done without it. Web browsing is an obvious one, but email and Twitter too. The real-time nature of them would be annoying--who wants new email or Tweet messages flashing in the status bar of your text editor all the time?


I respectfully disagree. Web browsing is just fine in Emacs (ezbl - uzbl embedded inside a slightly patched emacs - is sweet). And the best and most scalable mail reader I have ever encounter just happens to be Gnus, which is also an Emacs application. I have found no other program that would allow me to work as efficiently as I do with Gnus (and I'm just a novice Gnus user, with a lot to learn about it still).

I have Gnus set up to pop up a desktop notification when important mails arrive (either in my inbox, or on any of the various lists I am on) - but only when it's deemed important by my filters. There's no status area flashing, there's a desktop notification, like in every other email client out there.

I believe the same could be done for Twitter aswell. I know I've done similar things with my IRC client (ERC rocks too, by the way), I can't see why I couldn't do it with Twitter. It's also possible to just run it in a buffer in the background, with no notifications at all.

Emacs works very well with real-time stuff too. And being written in lisp, it's very easy to customize how it behaves to suit one's needs.


I've been reading my mail with Emacs since 1992. (I use a very old version of VM with local modifications.)

As far as notifications of unread mail go, Emacs used to put "Mail" in the mode line when my folder in /var/spool/mail is non-empty, but I disabled that in the 1990s.


Does your setup today involve IMAP and SSL?


I use fetchmail, which is configured to use IMAP and SSL with Gmail's servers. I am not exercising all of IMAP's functionality though IIUC since I rarely need to access my mail from a machine other than my main machine (and then Gmail's web interface suffices).

I run fetchmail manually rather than having cron run it automatically. The reason I do it that way is that the minute or so I have to wait for fetchmail to download my mail reduces the temptation to check my mail more often than I really need to. If there were a way for me to start reading my new mail instantly, checking my mail would be more gratifying (since instant gratification is more gratifying than delayed gratification) and consequently I would have to exercise more willpower to resist the temptation to seek the gratification.


Wanderlust (wl-beta in debian) is my favorite IMAP reader.

I configure it to use openssl (instead of gnu-tls) for ssl. Everything works well and I'm not finding any features lacking.


Mine does. Works well! Even with gmail.


I kind of agree about the flashing notifications, but on the other hand, just yesterday I took the output of a grep, sorted it and removed dupes via Emacs, and then tried to copy-and-paste it into Mail.app. Turns out there's some bug or other issue with pasting into new messages, and it dumped the newlines. Now I'm off searching for this issue and reading Apple support threads from 2008. If I was using Emacs as my mail client, presumably I wouldn't have this issue at all.


I've always wanted to know the breakdown within the Church of Emacs of those who use it as everything including the kitchen sink, and those who just use it as an editor.

Does the former alienate a lot of would-be users?


yeah, definitely.

Though, after having tried (and failed) to make the jump from vim => emacs a few times in the past, I can see that forcing yourself to use nothing but emacs for 30 days would probably get yourself enough of a grounding to make the transition stick.

If the whole emacs/lisp integration didn't look so much nicer (than vim/lisp) I would have given up trying to learn emacs a long time okay. One day though . . . I'm sure both of these will start to make sense =)


Emacs in 7 days:

Day 1. Find a VT100, attach it to a dec10 or vax. Learn teco$$ Day 3. Move up to vmacs. Day 4. Move vax 1500 miles. Find 9600 baud modem and dial in. Day 5. Install unix. Learn qed or ed to get a real taste of the usefulness of regular expressions in moving around a line editor Day 6. emacs -nw. Luxurious, isn't it! Read the emacs lisp user guide. Day 7. learn about m-.

Optional Day 8: Laugh at the eclipse losers.


> Learn teco$$

This is pronounced "learn teco altmode altmode".


Why not start with Viper? (Emacs' vi emulation.)

I'm an Emacs user, but I've always been curious about trying that. It seems to me the big advantage of Emacs is its customizability, not its particular default keybindings. Maybe the vim ones are better. Viper could get you the best of both worlds.


Speaking as a Vi(m) user, viper is a pale imitation of the vi model. It gives you the basic keybindings all right, but you can tell its fake. Getting vi right is about more than keybindings. Undo doesn't behave predictably. You can't always compose commands the way you would in vi. Actions that would be a single discrete unit in vi become an awkward workaround. I wanted to like viper, because I like emacs's programming environment better than Vim's, but it's not worth sacrificing the feel and functionality of vim's editing model.


As a regular vim user, I recommend vimpulse if you want vim-like keybindings in emacs. IIRC, it even introduces some ":" functionality. It is still a pale imitation, but it is better than wrestling with default emacs keybindings in typical editing.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: