The Lounge is rated PG. If you're about to post something you wouldn't want your
kid sister to read then don't post it. No flame wars, no abusive conduct, no programming
questions and please don't post ads.
Schools should teach at least the common two key-one handed commands should be better.
According to my teacher, typing is the fastest way to input commands. Since Windows (in those days) could completely be controlled with the keyboard, I simply disconnected the mouse and started practicing.
It is a lot quicker, but in modern times it is not always practicable to not use a mouse. Visual Studio without a mouse is a real pain. So, the mouse came back after a while, but this time, on the left side.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
I'm keyboard heavy as I started coding in before they had fancy things like mice (mouses? meeces? what is the plural?) hanging out of computers.
Biggest pain for me is function keys on laptops.
I'm far more likely to want to start a debug session than get on an aeroplane, so why do I need to hit "fnkey" or whatever to tell it I'm using a function key? (Yes, I can probably change it via the BIOS but it's a lousy default).
Whenever you find yourself on the side of the majority, it is time to pause and reflect. - Mark Twain
I know. I remember that particular misfeature being one of a number of showstoppers with me seriously using a Macbook (ca 2000 PowerPC model).
I was very pleased that my new ASUS Zenbook supports function keys by default without having to hack the BIOS. The only thing they did wrong was put the page up and page down as the alternate meaning of F11 and F12 - I ended up repurposing the useless key with a box and 3 horizontal lines and the only somewhat useful right control key as the page up and page down keys, using an xmodmap script. At least they could be repurposed, on the aforementioned Macbook, modifier keys could not be repurposed in that way, so I had useless keys, and nowhere to bind page up/page down.
I have amazed people with how I can do things so quickly, just by pushing a few buttons. Especially in Excel, which has quite a few handy keyboard shortcuts, although as I type this into my browser, I can't be sure of recalling them exactly.
Switch to excel, and my fingers will execute what my brain is wanting without me explicitly thinking it through.
There are times when I'll be collaborating with someone, and I'll drive excel to set a formula, copy it down a data set, copy paste some data, format a column and it'll be done with a few key-presses so quick that people think it's magic.
Even using F4 to repeat the last command is a time saver.
Even using F4 to repeat the last command is a time saver.
One of my favourite routines is for formatting all the cross-reference links (to pictures, diagrams, tables, etc.) in documents.
People have been known to gasp, when I've demonstrated it to them.
0. Select one link
1. Hit Ctrl+D
2. Set the font style (usually blue & underlined)
3. OK out of the Fonts window
4. While there are still unformatted links in the doc:
5. Hit F11
5. If it takes you to another link, hit F4, Else hit f11 again
What can be upwards of an hour's work, reduced to seconds (and it's even cooler if you've already got a formatted link -- select the formatted link in step 1, and step 2 becomes unnecessary).
Unfortunately, ms is on a crusade to destroy useful functionality like this, in the name of "failing to make our UI look as cool as apple's" and destroying focus, so don't be surprised if it disappears during an "update", like so many other vital-for-good-productivity functions have.
I wanna be a eunuchs developer! Pass me a bread knife!
And THIS is why shortcuts will never be standardized everywhere: each programmer has a "better idea" than what others use. You may be quite correct in this case; however, I don't think the word "eight" should be spelled the way it is, either. Nonetheless, it is the standard.
Well there's a way to get around some of that on Windows. All the editors/IDEs/word processors I use all use the WordStar control sequences for editing purposes. I wrote an AutoHotKey script to translate the WordStar control sequences into the control sequences used by the 'appropriate' application. So Libre Office, jEdit, CodeBlocks, Notepad++, Eclipse and VS all appear to use the same control sequences when editing text. To make this work well, I also had to remapped my keyboard a bit. Cap Lock is now Control, the Alt key is now Cap Lock and the Control key is now the Alt key.
It's makes me faster editing text, which is (was, I'm retired now) really my main job as a code developer. Also, it's really not that difficult to write an AutoHotKey script to translate control/charater sequences. I just wish there was an AutoHotKey for Linux. There is a setup to use Python to do the same thing but it has noticeable lag compared to AutoHotKey.
Windows key shortcut guide - The shortcut guide appears when a user holds the Windows key down for more than one second and shows the available shortcuts for the current state of the desktop.
My old boss was amazed at how fast I could translate a POCO from Visual studio into a DDL for Sql SSMS bouncing through notepad and excel without touching the mouse faster than he could read what was being read.
Director of Transmogrification Services
Shinobi of Query Language
Master of Yoda Conditional
I suppose it depends on what type of school you mean. Four-year colleges teach more abstract concepts; a more generalized education that allows the graduate to adapt to changing environments. Community colleges focus more on students getting a job now, so courses are more focused on products. These shortcuts should be more ingrained than that, however, so let's go further back. In high school, very few students pay attention to anything except the opposite sex. Any earlier in school, and by the time students are starting a career, odds are that the entire interaction mechanism with computers will have changed yet again.
I see computer interaction as being a bit more like dressing yourself, tying your shoes or brushing teeth. These are really concepts that should be taught at home. Of course, Apple households will have habits that differ from Windows households. C'est la vie!
It's not schools' job. I mean sure, schools are there to teach the basics needed in life but the thing is, a programmer is, as long as it ain't a code monkey job, supposed to be self-reliant when solving problems so teaching them everything from breathing to keyboard shortcuts isn't needed. Any IDE worth it's salt displays it's keyboard shortcuts itself so someone who's able to teach themselves a thing or two (a skill that I consider a base requirement for programmers) can figure out themselves.
On the other hand, a reason why a co-worker of mine prefers too-terse C-style function names is that he never really learned to type. He's faster than my mom, that I admit, but not even that much faster.