Hacker News new | past | comments | ask | show | jobs | submit login
Learning Vim while playing a game (vim-adventures.com)
200 points by erbdex on March 23, 2015 | hide | past | favorite | 71 comments



> - 6 months access to VIM Adventures

> - 13 fun and engaging levels

> - More than 60 commands and motions

> - Covers most of the keyboard

> - Now for only $25

I personally think it is a wonderful idea and love how it is implemented(got very excited the first time I saw it). But I can not justify $ 25 for a game I can only use for 6 months, but I will pay $ 25 once off.

Then again one need to take hosting costs, and the time it took the creator to make the game in to account; and lastly it is his product so he can set the price point to whatever.

It will just not bring the joy of vim to African kids in Uganda.


Only 6 months access is a big turn off for me. Even if I use it for less than 6 months, I like the feeling that I could go back to the site and practice, if I wanted to. I'm guessing over 90% of users would not use it for the whole time, so server costs would seem like a non-issue.

EDIT: I spent so long typing this that organsnyder had the same response.

In addition, I feel that the price point is off a little here. I think that dropping the price (or at least adding unlimited access) would increase the amount of people buying the game at a higher percent.


I wonder if the license actually deactivates after 6 months, or if the creator simply added this term to limit his liability. Per jtreminio, he purchased two years ago and continues to have access. I bring this up because you could flip this and rather appreciate his transparency, letting his customers know that they'll have at least 6 months access if and when he decides to shut the game down.


In defense of the fee, you likely won't be playing it for more than six months anyways—once you've mastered vim, you probably won't keep playing it.

However, my response really adds more weight to your idea: since we probably won't be playing the game very long anyways, why not just offer it in perpetuum for the same fee? I bet the author will get many more sales with that arrangement, and their expenses won't really change (if someone does become an avid long-term Vim Adventures player, even extensive usage costs mere pennies in server time and tech support).


I figured it was about restricting login sharing. At least that's why they do it on sites with question banks for standardized tests.


I bought the game with 6 months access one and a half years ago. After the 6-months period was over, I still was able to replay the whole game from start to finish. And even now, after 18 months the login is still working. I can play the game just fine. That's no guarantee, but it seems the 6 months policy isn't really enforced. Probably just a safeguard in case popularity and server load takes off.

For the game itself: I can highly recommend it. You will get a decent grip of vim. However, it doesn't get into advanced topics like macros, plugins etc. It won't make you a vim wizard. But for a beginner, it's excellent.


I have been a beginner for 18 months. I played until I got the first key, drove over the first chest, and apparently have nothing to show for it. Am I missing something?


Yep - keep going right and work out how you can navigate the water obstacle. You need to meet the young lady with pink hair.


The thing is, you can afford it, and you'd get great value out of it. And getting even slightly proficient with vim is a massive boost, since you can use it everywhere (I use it inside VS and Firefox). I agree it's probably just really bad marketing for him to limit access, since most people are going to have a negligible load. So from a business point, it's almost certainly wrong. The 6 month thing is only a problem if you really procrastinate. After you learn it there's no need to replay. But still, bad marketing.

From a personal point, vim is amazing and will significantly improve your text editing life and getting these skills is worth far far more than $25. (I'd pay at least $1000 to have vim proficiency loaded into me Matrix-style.)


Yup, it looks very nice, but I doubt that I'd get full usage out of it in 6 months. I'd have to time buying it very carefully. So most likely won't buy.


I bought a license over 2 years ago, I don't recall any such limitation back then.

Here's hoping this isn't retroactive.


"But I can not justify $ 25 for a game I can only use for 6 months, but I will pay $ 25 once off."

just to play devil's advocate, that's less than the price of a grande latte at starbucks every day for a week


I started to get tired of comments like "but that's less than X!!1". It just seems like you want to tell somebody they can't appreciate the value of money or that they can't put an amount in relation to some other amount.


there is also vimgolf[1] for a free and more challenging alternative, in which you solve various text editing problems with least number of keystrokes. it has a nice cli[2] that retrieves problems to the real vim editor, and submits scores. it is interesting to see how other players in the leaderboard solve the same problems differently, and you learn a few useful tricks along the way.

1: http://vimgolf.com/

2: https://github.com/igrigorik/vimgolf


I bought this game a few years ago. I learned quite a few things about vim. Unfortunately the puzzles in the later levels aren't very clear. I spent hours trying to figure out what on earth they wanted me to do. To me this was counter productive and got less and less fun. I ended up leaving the last few levels unfinished as I felt I got very minimal returns for time invested.

If you're interested in picking up vim, I love it for the first 5 or so levels. After that, not so much. (I currently still use sublime text but do occasionally use vim on servers)


I got good at the Vi movement keys by playing Nethack. Nothing like a few 50,000 turn games to put hjkl into muscle memory.


I've played a massive amount of Crawl. I already knew vim, but you get a lot of repetition with those keys for sure.


About vim: There is one thing that always has bothered me a lot, and it is that I am lefty, and I tend to think that at the left I have the "arrow up". Naturally I always expect the "arrow up" at the left, but it is hjkl.


you can always remap the keys


Loved it, but as a student 25$ is kinda steep. Also, 6 months is weird.


A good way to learn the vim hjkl keys is to play tetris. Most tetris allow remapping the keys. That's how I got used to those keys.


I just want to say thank you for making this game. That's how I first learned Vim and I have been using it ever since.


I'd pay $25 for permanent access and/or an offline version. However I dislike the 6 month access a lot, and it burns a little of the good will I have.


I've been using ShortcutFoo. It's pretty good to force myself to learn the basics.

[0] https://www.shortcutfoo.com/app/dojos/vim


I highly recommend this to anyone interested in vim. Vim-adventures is how I got into using vim as my main editor.

Also for the people complaining about the 6 month access, I get your point but I think this is meant to be just an easy introduction to vim, not a tool for mastering it. I played this for only like a month or two and after I knew enough to start using vim as my main editor I hardly ever touched it again. I haven't even finished the game.


Reminded me how much I hate vim and how it is biased towards right-handers.


Really? I'm right-handed, but don't have any trouble making any kind of key combinations at any speed with my left hand. Aren't most people (in tech, at least) ambidextrous when it comes to typing?


I type pretty well, but my left hand is definitely faster than my right. I find emacs a whole lot friendlier.


Check your privilege.


This is unhelpful because it's unclear what your intent is, other than a general rebuke.

More helpful would be something like "This is not correct. Anecdotally I've found ..." or "It is unfair to expect that everyone can ..."


/sarcasm


Lefty here, I never really felt that way. When it comes to typing, I feel like I'm not either-handed - both hands get a full workout, pretty much whatever I'm doing.


Wot? The whole point of vim is that it is 100% customizable and non opinionated about what keys do what. The default mapping are what they are...but they really expect you to remap most of them even if you are a right hander.


That seems crazy to me. A huge fraction of the value of something like vim (vi-clones specifically) is that I can find it on any machine and use it as-is... that isn't going to be true if I expect different keymappings. Even in emacs, I try to use the default mappings for standard things and just supplement them with added features.


TBH, I'll almost never use vim without my configuration files. The only times i might do this is if I need to do a very quick edit to a config file, in which case typing at 50% efficiency isn't going to hurt that much.


That is not the whole point of VIM, this is more in line of what you could call a point: http://stackoverflow.com/questions/1218390/what-is-your-most...



If you are interested in learning vim, there is also the handy vimtutor command.


The Vimium extension for Chrome is a decent way to get used to the 'hjkl' movement key bindings. I also love being able to yank/put URLs as well as navigate through tabs using VIM-esque key bindings.


The huge gain with vim browser plugins is the navigation. Hitting f or F then getting numbered shortcuts for every link? Fantastic.


Yep, can't believe I forgot to mention that feature! Mouse-less navigation is the best.


I played through all the free levels. It's slow, you don't learn a lot, and you end up having to pay to keep going.

If you are learning I'd advise you to check stuff like this: http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial...

They show you a few shortcuts on a keyboard layout and they keep on adding shortcuts to the pictures so you can learn at a nice pace.


I teach a first year Intro to Unix module (CS and ICT) at a University in the UK.

We ran this for our students as an exercise and it went down really well. We've got people using Vim on a daily basis who probably would have never heard of it otherwise.

It's a great way to beat the learning curve that vimtutor represents, for people who prefer more visual challenges.


Well that killed my morning routine.


Don't worry. The efficiency improvements you'll glean will pay back the time eventually.


Not only that, but the reduction in frustration when transforming a bunch of text (say, using macros) will compensate even more than the actual time spent. There's a joy to be had when doing menial tasks with vim, a joy from wizardry.


FWIW, I learned the vi cursor keystrokes playing rogue in 1982. I also learned C studying the source, while staring at lines like while (j++=i++); which was a pretty strange construct to a Pascal programmer.


It's broken for me as I have "start searching as soon as you start typing" feature on in my browser. It's searching instead of moving. Latest Firefox on GNU/Linux.


I'd love to be able to reassign some keys. I use colemak and for example h,j,k,l need to be reassigned to actually be usable (otherwise, the layout hardly makes sense).


pacvim is also a nice game for learning vim keys: https://github.com/jmoon018/PacVim


Bit off-topic but that pleasing musical sound when you hit the space bar is really like the first note in Aphex Twin's "PAPAT4 (Pineal Mix)" :)


This is how I finally learned to get comfortable with HJKL in Vim. It's a great game.


I eventually tried using the arrow keys and it pops up a message saying that hjkl is the vim way, but vim lets you use the arrow keys, so they'll let you make the decision yourself. I'm glad they did that, because I'm comfortable with the arrow keys and the other aspects of the game are a lot more fun and interesting without having to re-train muscle memory.


Some of my more engaged intro programming students thoroughly enjoyed this game.


Learning Vim if you don't know it already is a waste of time for new programmers. If you want a text editor, use Sublime. If you happen to be in a terminal without a GUI, and need to edit something real quick, just use Nano.

Don't spend your valuable time learning Vim. It's not worth it.


Opinions on development tools without explanations are pretty meaningless without context. Great for polls, not so much for discussion. It's like telling someone what kind of car to buy based on whatever you happen to own rather than what they might use it for.


That is actually 100% fair.

My issue with Vim is that it takes quite a bit of effort to learn, as this very thread illustrates. And for what gain?

I don't know how to use Vim, but I've given learning a shot a few times before having this visceral reaction like, "Why the hell am I doing this?" And then I move on to other things.

I've watched other programmers use Vim, and they do not appear to be any faster or more efficient than me with Sublime and/or an IDE like PyCharm or Eclipse. And for some tasks they seem to be quite a bit slower.

I dunno. To each their own. I wouldn't fault someone for learning Vim. But to me it seems like a waste of time. Modern text editors are much easier to learn and use. If you want to spend time learning something, learn something useful.

Just my opinion though.


Vim will still be going strong in 10, 20, 30 years. Will Sublime?


Good concept, sound doesn't seem to be working for me on OSX Chrome.


It works for me, same setup. =P


Gotta have Flash enabled.


This has been posted about a hundred times already. Perhaps check the history before posting something old?


Reposts are frowned upon in some Internet forums, most notably Reddit, but that's not part of the culture of Hacker News.

Reposts are fine here as long as enough time has passed since the last posting.


This is awesome. Thank you!


3rd vote for nethack.


Just play nethack.


I dont do that much text editing. I use notepad++ . Is vim super amazing or something? ps. I usually work on a windows machine but vim is available for windows.

EDIT: Also emacs is available for windows, isnt emacs meant to be the ultimate text editor type thing? I dont really have any need to these, I'm just curious really. When Ive had to do perform some weird operation on a load of text or source code for example I've just written a script to do it.


Yes, vim is amazing.

1. It's installed on basically every server you SSH into, which means you can edit text on remote servers instead of having to download, edit, and re-upload

2. Keyboard-only interface is big. Not only does it mean that you don't have to break flow with mouse usage, but it also means that you can record and play-back a series of edits and movements.

3. Vim is built on composition of count, action, and movement. This means that you can do lots of things with learning a few things. For example, you can diw to delete the word your cursor is inside, or di" to delete the text inside the pair of quotes, or di( to delete inside the parentheses. And when you learn daw to delete around a word, you get access to da" and da( for free.


I don't really have experience with notepad++ at all, but I did try sublime text 2 for a while. It really wasn't my cup of tea. Vim is really useful to me because it's easy to use in terminals and it has a lot of powerful, time-saving keystrokes once you get past the learning curve. Need to comment out lines 52-58? ":52,58s/^/#/", which comes naturally after a little practice. I've used emacs and it's very comparable, but I just happened to like vim more. It can be just a matter of taste, but I really recommend checking out both vim and emacs to see if it can save you time typing out small, repetitive stuff that isn't worth writing a script to do.


52GqqI#<Esc><Enter>q6@q is how I'd usually do that (go to line 52, record how to comment out a line and move to the next line, then do that 6 more times). The macro is about the same number of keystrokes to write, is more generally powerful, and leans more on standard editing skills.


I think Vim's great, but if you don't use a text editor on a regular basis then it's not worthwhile to learn it.




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

Search: