7 ms·
Vim: Seven habits of effective text editing (2000)
- gshakir 9y agoIf there was a eighth one, I would add learning to touch type. Groking VIM becomes easy when you can type fast.
- brucephillips 9y agoDo there exist modern information workers who can't touch type?
- dsego 9y agoYes, hence auto-complete.
- brucephillips 9y agoI can type. I use auto-complete all the time.
- Moru 9y agoMost autocomplete functions just confuses my fingers and I end up either deleting and retyping, missing a character somewhere or I type faster than the slow autocomplete can fetch data... The linux prompt for autocomplete path and filenames are usefull though.
- artursapek 9y agoThat's just meant to be a time saver.
- megaman22 9y agoYes, definitely. Anything that you can imagine, there's a huge constituency that isn't capable of doing things you think are basic
- brucephillips 9y agoWho are they? What do they do?
- Moru 9y agoEverything. Touchtyping is just not a focus in school any more. Teachers look funny at you when you ask when the kids start touchtyping. They are expected to figure it out themselves. Very funny.
- fao_ 9y agoAnyone. I didn't learn to touch type and I'm about as fast as a touchtypist. Indeed, my typing speed went down when I started learning and because I didn't finish, hasn't really recovered since. 99% of programming is thinking and structuring though, so touch-typing isn't all that useful. https://phys.org/news/2016-02-ten-fingers-fast.html https://phys.org/news/2016-02-ten-fingers-fast.html http://www.i-programmer.info/news/99-professional/9427-you-dont-need-to-touch-type-to-go-fast.html http://www.i-programmer.info/news/99-professional/9427-you-d... https://pdfs.semanticscholar.org/c366/89b3803e8744b14bc50998c69b7b91956aa5.pdf https://pdfs.semanticscholar.org/c366/89b3803e8744b14bc50998...
- brucephillips 9y agoDo you really spend 1% of your programming time typing? I find that hard to believe.
- fao_ 9y agoI wonder what it is with hacker news and the inability of people on it to understand simple dramatic exaggeration. A more realistic estimate would be something like 40%. When I choose to, I write C or Erlang, so there is generally not much boilerplate needed in making things go. I would say 60% of my work is architectural stuff. How things should be designed, named, structured. What parts should plug into what, what functions and set of systems of POSIX to use, what makes most sense for future reading, etc.
- 35bge57dtjku 9y agoYes. Typing != information work.
- swimfar 9y agoI've worked with a number of engineers in Europe who couldn't type without looking at the keyboard. I assumed that it's not part of every school curriculum there. Or maybe they learned and then went back to hunt-and-peck afterwards.
- fencepost 9y agoIs there a lot of variability in international keyboard layouts? I'd expect the base 26 letters + digits to be pretty consistent, but in countries with a lot of accented or alternate characters I could see touch typing being less attractive as a student.
- e12e 9y agoI'm very happy I attended an optional touch type class in high-school (on typewriters, actually). My recommendation for kids would probably be to learn to touch type, on a better layout (eg dvorak, colemak, workman). Either way, proper touch typing is more than typing fast, it's also about "sustainable typing": posture, strain, reducing rsi - as well as being free to copy (read text to type in, not having to look at the keyboard or the screen where typed text is displayed). I've not met many people that proper touch type, even programmers. Even if being able to copy a page of example code from a magazine/book is a useful skill.
- brucephillips 9y agoYou're describing ergonomics, not touch typing.
- Moru 9y agoErgonomic typing is usually part of the touchtyping class. At least when I was in school 30 odd years ago. I think it was obligatory for everyone but can't remember any grades. Most didn't bother though. (Sweden)
- ValleyOfTheMtns 9y agoOne of the most practical and high-use skills I learned in high-school was touch typing.
- Ayaz 9y agoAbsolutely. I learned touch typing on my own during my O'Levels years when I bumped into a DOS-based touch typing tutor. It changed the way I looked at computers.
- xxpor 9y agoI hunt and peck but I don’t need to look at the keyboard
- Ayaz 9y agoSadly, yes. Out of the 400 people that work where I work, less than 30 know how to touch type. It deeply saddens me.
- Moru 9y agoI'm surprised this isn't the first. But I guess this is a clear given. Everyone should learn to touch-type, it's so easy and gives your mind the freedom to concentrate on whatever it is you are trying to accomplish instead of finding characters on the keyboard.
- barbs 9y agoHe does mention this at the end of the article. One last remark to remind you of what happens when people ignore all the above: I still see people who spend half their day behind a VDU looking up at their screen, then down at two fingers, then up at the screen, etc. - and then wonder why they get so tired... Type with ten fingers! It's not just faster, it also is much less tiresome. Using a computer program for one hour each day, it only takes a couple of weeks to learn to touch-type.
- metaphor 9y agoAdmittedly, I had look up what was meant by touch typing; taken literally, how else would typing be performed--osmosis? Didn't realize that it meant typing without looking at the keyboard. Would have thought this was a given, but in hindsight, I suppose the prevelance of the touchscreen interface probably has something to do with my false assumption.
- Ayaz 9y agoDefinitely. Using a computer becomes easy when you can type fast without looking.
- wildflowero 9y agoI must ask: how many people actually use the right shift key when typing? I have grown accustomed to only using my left and was wondering if others shared this behavior.
- dsego 9y agoI do. Started with only left, but fixed with deliberate practice .
- diabeetusman 9y agoI actually only use the right shift and very barely use the left one myself
- deleted 9y ago[deleted]
- Moru 9y agoI use both, depending on what side of the keyboard the other character is on :-)
- ashark 9y agoI almost exclusively use left modifiers. I blame first person shooters.
- utsahi 9y agoI use the right shift/ctrl/alt keys along with the keys under the left hand, and vice versa.
- Avshalom 9y agoRight shift yes but basically never right Ctrl/alt
- barbs 9y agoYeah I only use the left one. I spose I should be using both?
- Ayaz 9y agoI use both shift keys. Left shift key when the other key I need to press is on the right side of the keyboard, and so on. I also use both of my thumbs to press the spacebar.
- okket 9y agoPrevious discussions: https://news.ycombinator.com/item?id=15532457 https://news.ycombinator.com/item?id=15532457 (~2 months ago, 237 comments) https://news.ycombinator.com/item?id=4620065 https://news.ycombinator.com/item?id=4620065 (~5 years ago, 66 comments) All submissions: https://news.ycombinator.com/from?site=moolenaar.net https://news.ycombinator.com/from?site=moolenaar.net
- jmcphers 9y agoFor programming, I've found that my time spent navigating the code dominates the time I spend editing it. Bram's recommendation is to generate a tags file right away for every project to keep this time down, and it's excellent advice. The problem with this, however, is that it's a pain to remember to generate and update the tags database. Thankfully, you can configure Git so that it builds a tags database for you automatically whenever you clone a repo, and updates it in the background every time you commit, pull, or push. Instructions here from Tim Pope: http://tbaggery.com/2011/08/08/effortless-ctags-with-git.html http://tbaggery.com/2011/08/08/effortless-ctags-with-git.htm... I'm partial to GNU Global, myself, which adds a basic "find references" command, slightly better parsing, and incremental DB updates. Also relatively easy to set up for effortless navigation: https://csl.name/post/gtags/ https://csl.name/post/gtags/
- SamPutnam 9y agoA couple of things to watch out for when you are using these three steps: "I want to get the work done, I don't have time to look through the documentation to find some new command". If you think like this, you will get stuck in the stone age of computing. Some people use Notepad for everything, and then wonder why other people get their work done in half the time... It's not directly related to vim, but... Some tool you use will always seem extraneous to someone further down the stack with more experience than you... I remember at the beginning of my coding career asking a software engineer what IDE was the best and getting back the answer, "you don't need one, you can do everything in NotePad if you want." (Suffice to say the impetus to go home and want to start coding from a blank NotePad file that night was dead on arrival.) Now, if he had asked me why I was asking what IDE was best, I would probably have said "I want to create something as quickly as possible that helps me understand what code does," and then I would have been off to the races. Googling and learning along the way...