vi was actually written in the 70s (1976), but I just started using recently. Actually, what I started I had read a lot about it on Stackoverflow, and last time my friend told me he uses vi when working with C (I, instead, had been using the Code::Blocks IDE); and so I decided to give vim (which is actually an extended version of the vi editor) a go during a *boring* Entrepreneurship lesson at school...and I was impressed and got so immersed in it that I even forgot I was still in a lesson at school.
What really impressed me with vim is the amount of work I can do with fewer keystrokes as possible.
Here is a list of couple of basic commands (from this answer over at stackoverflow) :
y(ank) - copy d(elete) - delete c(hange) - change p(aste) - put from buffer after cursor o(pen) - start a new line i(nsert) - insert before current character a(fter) - insert after current character w(ord) - moves to beginning of next word b(ack) - moves to beginning of current word or prior word e(end) - moves to end of current word or next word f(ind) - moves to a character on the current line movement keys you just need to learn: h,j,k,l ^ - beginning of text on a line $ - end of text on a line 0 - first position on line most commands can be prefaced with numeric modifiers. 2w - means move 2 words 5h - means move 5 charcters to the left 3k - means move 3 lines up 3fs - means move to the 3rd letter s folling the cursor modification commands (d,c,y) need to know how much to work on. dd - delete a line into memory yy - yank a line into memory cc - change the whole line c$ - change from current position to the end c2w - change the text spanning the next 2 words 3dd - delete 3 lines d2f. - delete to the second period. . - means redo the last modification command. / - searches for text, and then n(ext) will go the next found occurance. N will go prior. ? - searches backwards through the document.
This is the book I used to start learning vim with: http://modular.math.washington.edu/home/agc/lit/vim/vim_tutorial.pdf
Once I complete the above book, I'll have a go at O'Reilly's Learning the vi and Vim Editors