TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Build muscle memory with your favorite editor

443 pointsby swalbergalmost 13 years ago

51 comments

SoftwareMavenalmost 13 years ago
This really didn't work for me. I found needing to parse the command ("Move backward a word") broke the memory that I have built up over 15 years of using Emacs. Instead of naturally moving backwards with a flick of the fingers, I had to concentrate on where each finger was and on the key I was pressing.<p>I think the <i>goal</i> of this is great, but as it stands, I'm not convinced it is going to help. Given it aborted my natural wiring, I doubt it will be wiring things up correctly for people who don't have the wiring (I could be VERY wrong here!).<p>Now, take @gruseom's idea of a visual "goal" that you are chasing, and I think this could be intensely valuable.
评论 #4252363 未加载
评论 #4253143 未加载
评论 #4251951 未加载
评论 #4254840 未加载
评论 #4251930 未加载
评论 #4252693 未加载
评论 #4251750 未加载
dansoalmost 13 years ago
This is neat, but one thing it misses is the "reward." Not a gamification award, but the visual feedback from hitting a keyboard shortcut and seeing it actually happen, which helps reinforce the connection from muscle-action to program-action.<p>Another important component is <i>seeing</i> the scenario. Seeing the words "Duplicate line" doesn't hit the same neurons as seeing the situation in the text-editor that toggles my brain to think, "I need to duplicate a line here".<p>Obviously, none of these features are trivial to implement. Great work, though!
评论 #4250949 未加载
评论 #4251007 未加载
gruseomalmost 13 years ago
This is neat and promising. I agree with other commenters that the weakness is in telling the user what to do in the form of text like "Move cursor to beginning of line". Routing the muscle signals through text processing in the brain is slow and isn't what goes on when you actually use an editor. i.e., there's no text in a marquee in one's head telling one what one needs to do next. Since keyboard shortcuts are all about habit and speed, you definitely don't want to require any atypical or slow mental processes.<p>For cursor movement you could show a buffer of text with some kind of target thingy that moves around, and you have to chase it using keyboard commands. That might be fun. It would also be simple to create an efficiency score based on how many commands the user used to get where they wanted to go.<p>For text manipulation you could provide some auxiliary visual indicator of what needs doing. For example, to practice deletion, have a buffer of text and some visual indicator of a character, word, or line that needs deleting. Say it flashes (probably a bad choice, but whatever). Then the user's job is to use the right shortcut to delete the flashing thing. At first, the software could move the cursor to the right place before each new command. For more advanced users, you could tell them "First move the cursor to the right place and then invoke the right command to delete the flashing thing". As soon as they delete one bit, another bit starts flashing. You could measure how long it takes to delete everything in the buffer this way. That might be fun too.
评论 #4251482 未加载
评论 #4251507 未加载
jlebaralmost 13 years ago
I wonder if this actually teaches you the right kind of muscle memory.<p>I have no difficulty with hjkl for navigating in Vim, but I had trouble associating those keys with the string "move &#60;up/down/left/right&#62; one character".<p>Mapping from the description of the command to the key is not the kind of muscle memory I use all day.
评论 #4251020 未加载
评论 #4251164 未加载
评论 #4251174 未加载
评论 #4251368 未加载
评论 #4251006 未加载
watterssnalmost 13 years ago
Wow. Nothing like waking up on Monday morning to find your app at the top of Hacker News. Thanks to whoever posted this :)<p>This is awesome feedback. It looks like the most requested feature right now is moving from reading words to a more visual representation of what's happening. This is definitely something I've thought about - but didn't want to attempt until I received exactly this type of response. Thanks! I'll definitely move this up as a top priority and hopefully have something implemented soon.<p>Thanks for everyone else's feedback. I'll carefully read each post and email I've received and respond appropriately.<p>Someone asked about the tech stack: backbone.js + sinatra + mongodb hosted on heroku (2 dynos). I'll try and get a blog post up with more on this plus possibly a HN postmortem if there is interest.<p>ps. I'll get eclipse added as well :)
评论 #4271641 未加载
评论 #4253542 未加载
viggityalmost 13 years ago
If you want better shortcut muscle memory, just unplug your mouse for a couple days. Do this once a year or so. You can thank me later.
评论 #4251661 未加载
评论 #4251337 未加载
评论 #4252807 未加载
评论 #4251229 未加载
评论 #4251291 未加载
breyalmost 13 years ago
If you get something wrong, and what you type is longer than the expected answer, you end up failing the next couple of questions too.<p>muscle memory - if you type eg "uptime" when the answer should be "free", it fails on the first character, but you're still typing, by which time it's on to the next question. which you then fail, because the answer to the next question isn't "ptime"
评论 #4250958 未加载
评论 #4250842 未加载
Jakobalmost 13 years ago
Textmate: ⌘-[ for shifting left is "History &#62; Back" in Safari and happens every time when it's the last shortcut in drill mode, which happened to me both times I tried.<p>Otherwise nice tool. I agree with the others about visual feedback. For Photoshop: Show the part of the palette you want instead of the name of the tool.
jasonkolbalmost 13 years ago
No Eclipse? :(<p>There goes a large chunk of users. You'd think this would be one of the first editors to have made the short list.
ElliotMingeealmost 13 years ago
I'm a little surprised at the lack of Eclipse support, given Java is one of the most popular languages and Eclipse is the most popular Java IDE<p><a href="http://zeroturnaround.com/wp-content/uploads/2010/11/IDEs.png" rel="nofollow">http://zeroturnaround.com/wp-content/uploads/2010/11/IDEs.pn...</a>
joshstrangealmost 13 years ago
I like it however I am stuck on "Open last closed tab" for Sublime in chrome. Whenever I type it chrome opens the last closed tab....
评论 #4251247 未加载
bdittmeralmost 13 years ago
Try tapping ABACABB (the Mortal Combat blood code) on the homepage for some fun. Nice easter egg :)
评论 #4251250 未加载
domodomoalmost 13 years ago
Had this idea too, glad someone has executed on it so awesomely. I've been eager to get better at Sublime Text, so will start using this.<p>Two suggestions which I think would be really awesome.<p>!. The hard part of exercising though is getting your butt to the gym. What if you could sign up for a daily email that keeps you at it, challenging you to take it to the next level, tracks your progress, sets goals and reminds you to make them, etc.<p>2. It's really abstract to just hit key commands without seeing them actually do something. What if you made small animated gifs for each action your are emulating, maybe even with a full fake editor background? This way, your brain would be tricked further that you are actually performing the action represented by the keyboard shortcut.
sophaclesalmost 13 years ago
Cool site, but a minor annoyance, is that some editors, like vim, have multiple ways of accomplishing a task. For instance move to line 4 can be done with 4G or 4gg, but only accepts 4G, which is frustrating as I've already internalized 4gg :) I'm sure there are others.
评论 #4251399 未加载
leealmost 13 years ago
That's really fun. I love the site design, very slick.<p>Found a "bug". Some of the keyboard shortcuts conflict with my browser shortcuts.<p>For example, in one of the emacs drills, to move down a line (ctrl + n) it causes chrome to open a new window... so I could never complete the drill because of this.
Xavuraalmost 13 years ago
Am I the only one that can't get this to work? First the legend shows a few of the keys as ⌥.<p>Then, say for Sublime to cut a line it's ctrl+shift+k. It shows K.<p>So I try hitting ctrl then shift - nothing. I try typing ctrl then shift - wrong. I try entering a caret (^) for ctrl - wrong.<p>Just what are you supposed to do?
chewxyalmost 13 years ago
Wow, this is actually fairly awesome. Works better than the vim cheatsheet I have hanging next to my monitor.<p>That said, the site can be pretty confusing. What's the difference between practice and drill (other than slight interface difference?)
评论 #4250807 未加载
BHSPitMonkeyalmost 13 years ago
It would be nice if the prompts at the end of sections could be easily keyboard-activated. (For instance, the "Start Drill" button that I have to take my hands off the keyboard to click.)
kecebongsoftalmost 13 years ago
This is great, I've seen a web game that you can use to practice vim schortcuts. But since this one's about building muscle memory, I don't see how this is going to be better than the actual use of the editor itself. Using the actual editor not only gives you the actual feeling but also challenge you with the real text editing tasks. CMIIW. But this is still useful if you just want to see a cheatsheet or not knowing certain shortcuts in the editor.
评论 #4251159 未加载
nicholassmithalmost 13 years ago
This is great, similar to the code drills posted a couple of days ago, pretty good way to get that crucial memory in place. Did drill, would drill again.
vadmanalmost 13 years ago
I have to enable way too much stuff in NoScript to proceed when I actually click on an editor button. Giving permissions just to shortcutfoo is not enough. NoScript also shows airbrake.io, stripe.com, olark.com. I don't know what any of those are, so I'm not enabling them. So I cannot use your website, as cool as the premise sounds :/
评论 #4250893 未加载
评论 #4250993 未加载
dbalateroalmost 13 years ago
I only use vim, and from using this site for 3 minutes there's clearly plenty of knowledge that I'm missing. I really wish that it would teach me the commands it was drilling me on, and not just expect me to know the key strokes. I know I can pull up the shortcuts reference, but I feel like it should train and hint, then drill.
username3almost 13 years ago
Some keys are confusing to read under the pulsing cursor. | overlaps b, k, h. e.g., h look like n.<p>Add a shortcut key for Start Drill!
afterburneralmost 13 years ago
I feel like this is the equivalent of obsessing too much about going to the gym. What about good old "on the job training"? The shortcuts you need, you will eventually internalize... instead of using up time on an exercise like this. I mean, it might give some benefit, but is it worth the mindlessness?
jay_kyburzalmost 13 years ago
What I found missing in this is _why_ I would want to jump to a matching bracket, or insert a line before.<p>Perhaps the game should be to transform one block of code into something different in as few keystrokes as possible.<p>I would love to see videos of people using commands that are not a part of my current vocabulary.
评论 #4252424 未加载
nicpottieralmost 13 years ago
Neat.. kinda fun.<p>One thing is you might want to allow people to configure the META key. I have Emacs set up so that the Command key is META, so all my muscle memory is ruined when trying to run through the drills.<p>But I like the concept and might use it to increase my shortcut kung-fu.
评论 #4254574 未加载
bostonvaulter2almost 13 years ago
I think a cross between this and vimgolf would be really good. Basically where you just get things you need to do like changing the paragraph formatting and you just implement them to help you get in a state of flow with your editor.
calydonalmost 13 years ago
A great idea.<p>Ctrl-shift-T is the key for repeating duplication in Photoshop, but it's also the shortcut for create the most recent tab in Chrome, so it's impossible to enter it unless you change your browser settings, which I'm not sure I want to do.
thread79almost 13 years ago
I thought this was a great idea. But I simply am an idiot and can't figure out how to use it. They tell you to type these || characters and it always spits back a fail when I try it. They need more user testing feedback.
aneth4almost 13 years ago
Love the concept, however this is much like learning a language by learning to translate.<p>求 -&#62; ball -&#62; O (actual ball)<p>vs<p>求 -&#62; O (actual ball)<p>Classic study vs immersion.<p>The implementation will be much harder, but for this to be effective show the manipulation, not the description.
ereckersalmost 13 years ago
It's nice, but I'm not sure that's how my mind works when I'm working in VIM. I wonder how I'd react if I was put in an actual document and then prompted somehow to do the same exercises.
pacomerhalmost 13 years ago
This is a fun project. But I'm not sure about the 5 bucks. Seems like it's begging to be rich too soon. This app is just revealing information you already have on a cheat-sheet.
Hilyinalmost 13 years ago
I found it confusing because it was using capital letters when shift wasn't implied. So I'd hit shift to capitalize like it displayed and it'd be wrong.
Ivesalmost 13 years ago
Hmm, I seem to be having a font-related problem, both CTRL and ALT symbols show up as (empty) squares. I'm running Chrome 22.0.1201.0 dev-m on Win7.
wowzeralmost 13 years ago
I really liked this. Unfortunately emacs bindings are the same as browser bindings so I kept killing my browser session and or browser tab.
borplkalmost 13 years ago
Can it be easily extended to add new editors? Perhaps you can let the users submit packages for their favourite editors...
wimalmost 13 years ago
This looks cool. Maybe you can consider a similar format to learn languages (e.g. memorize words or grammar rules?)
gingerlimealmost 13 years ago
Nice. Is there more info about how you wrote it? Which platform is this running on? Which tools you're using etc?
gcvalmost 13 years ago
Neat. But I have Emacs configured to use the command key as Meta, so this needs to be configurable in the drills.
评论 #4251748 未加载
thomasjoulinalmost 13 years ago
That's great, but you should accept all valid shortcuts. Move to beginning of line in XCode is ^A as well as ⌘←
subyalmost 13 years ago
Seems rather pointless. If a command is useful, you'll get muscle memory from actually using it.
samspotalmost 13 years ago
My pinky hurts after using this for sublime for a few minutes, and I'm getting emacs flashbacks!
asifjamilalmost 13 years ago
Anyone else experience out-of-whack CPU usage when loading up a tutorial?
coleiferalmost 13 years ago
In the absence of textual context its hard to find these drills helpful
durgaalmost 13 years ago
Awesome! Been subconsciously looking for something like this for ages..
johncoltranealmost 13 years ago
Well executed. `dw` is not "delete word", though.
tunnuzalmost 13 years ago
My vim doesn't get the ^ keypress :(
jvc26almost 13 years ago
Brilliant piece of work - nice one!
5teevalmost 13 years ago
No BBEdit. <i>sigh</i>
evjanalmost 13 years ago
Wow, this is great!
thekungfumanalmost 13 years ago
Not only is this a beautiful and helpful web app, but it supports many different editors instead of taking part in the text editor wars.
评论 #4250891 未加载