My name is Paul Bissex, and e-scribe.com is my consulting business. I build web applications using as much open source software as possible. From September to June I teach web design and other important non-photographic professional skills to photographers. In the '90s I wrote technology commentary and reviews for magazines, newspapers, and web publications, including Wired, Salon.com, FamilyPC, the late lamented Web Review, and the Chicago Tribune. Feel free to email me.
I'm co-authoring a book, "Python Web Development with Django", with Jeff Forcier and Wesley Chun. It will be published by Prentice Hall in July 2008, but is available for pre-ordering on Amazon now.
This site is built on a fresh trunk checkout of Django, running on Python 2.5.1, served by Apache and mod_python. The database is SQLite. The operating system is FreeBSD, on a VPS hosted at Johncompanies.com. Comment-spam protection by Akismet. Vintage topo imagery from the Maptech archive.
Akismet, del.icio.us, Django, dpaste.com, Emacs, FreeBSD, Freenode, jQuery, LaunchBar, MacPorts, Markdown, Mercurial, OS X, Postfix, Python, SQLite, Subversion, TextMate, Trac, Ubuntu Linux, wmii
Copyright 2008
by Paul Bissex
and E-Scribe New Media
I'm an Emacs man myself. I've never really used vim at all, and I use vi only for crontabs and commit messages. I've always grasped in the abstract the potential advantages of its modal editing, but that's as far as it ever went.
Jonathan McPherson's site has a great introduction to using vim that opened my eyes. His explanations of vim's features offer just the right amount of detail. Most importantly he explains why particular commands are a good idea. Not explaining that is one of the classic failings of manpages -- and I suspect that the vi manpage is the beginning and end of many users' attempts to learn it. They learn about insert mode, command mode, loading and saving files, and that's about it. Luckily, those just happen to be the prerequisites for McPherson's tutorial. Clever fellow.
His most important bit of general advice:
In general, you want to spend as little of your time in vim's insert mode as possible, because in that mode it acts like a dumb editor. This is why most vim novices spend so much time in insert mode -- it makes vim easy to use. But vim's real power lies in command mode! You'll find that the better you know vim, the less time you will spend in insert mode.
I'll never be a full convert (I've sold my soul to TextMate, and in the shell I'm happy with Emacs), but I'm definitely going to pull up that page the next time I need to use vi.
:wq
Oh, I know -- but thanks!
I've often left my $EDITOR as vi just to make sure I am forced to use it once in a while -- figuring that some dark day I'd be on a box with no Emacs and would be mighty embarassed not to remember how to make simple edits.
Even better -- set EDITOR and VISUAL to "emacsclient", and start gnuserv inside a running emacs process.
Comments use Markdown syntax. Your comment will not appear until approved, which may take a few hours or more. Spammers will be torpedoed.
The iPhone keyboard doesn't suck
Python one-liner of the day
7 comments
How not to advocate via Google Code
2 comments
99 problems
3 comments
bitmonk
Obscure "svn mv" problem solved
88 days ago
Charlie
Book news: Rough Cuts and Amazon
89 days ago
Simon Griffee
Django Mercurial mirror tweaks
106 days ago
Jason Calleiro
From PHP to Python
107 days ago
Yuli
dpaste.com
110 days ago
bruce
Neat Python hack: infix operators
114 days ago
David Reynolds
The original Lego Star Wars
122 days ago
At least 36614 pieces of comment spam killed since January 12th. Thanks are mostly due to Akismet.
If you want to use emacs for commit messages and crontab editing, then set the EDITOR environment variable.
For bash:
export EDITOR=emacs
and add it toyour shell startup scripts.
For bash:
echo 'export EDITOR=emacs' >>.bash_profile