Touch-typing for programmers

  • Thread starter Thread starter paulb203
  • Start date Start date
Click For Summary
The discussion highlights the importance of touch typing for programmers, with less than 20% of individuals reportedly proficient in this skill. Touch typing enhances speed and accuracy, which can lead to increased efficiency in coding tasks. Many programmers rely on programming environments that offer autocompletion, which can reduce the need for high typing speeds. However, the ability to type quickly may encourage programmers to rewrite and test code more frequently. Overall, while touch typing is beneficial, its necessity varies based on individual programming practices and environments.
  • #31
Yeah, I don't want to know how the code is doing it. What I want to know is what you are trying to do.
 
Technology news on Phys.org
  • #32
Most of the projects ive been on have massive code bases developed over decades and theres never any good documentation beyond the comments someone chose to include in the code.

You have to get used to recognizing code patterns, peoples coding styles and the names used for classes, methods and variables.

On one project, i needed to use a class that had a name with a suffix of Calculator. The task was to expand it use into a 2D array of calculations. It was a fairly complex class with little documentation so i assumed it carried some state information and made multiple instances. It worked well in testing on one platform but failed on another with out of memory.

I got scolded by the programmer managing the larger platform for not realizing it had no state. There was nothing in the code to help into using it and i had to make a value judgement to meet a short deadline.

This is where naming is important. True the class calculated something but it had no state information in contrast to real-world calculators which do. I do recall asking him that very question and getting an impression that it held some state but oh well teamates are sometimes like the geeks in the wargames movie.

Live and learn.
 
  • #33
I have this spreadsheet I made about a year ago where I was trying to model something, oxygen consumption by a material within a sealed container. And it has these formulas embedded in the spreadsheet columns, referencing each other. You know, f7-d7*exp(-$h$2*c7), etc, etc. I had made no notes about it and it was driving me crazy trying to figure out what it was doing, what I had made.

I finally deleted it and started over.
 
  • #34
symbolipoint said:
If keyboard is arranged the way or nearly the way the old manual typewriters were several decades ago, then very obviously, if "touch typing" to be the same as how "typing" was taught back then, then learning to type that way is an ADVANTAGE, regardless if writing computer language code or anything else.
With the exception of some keyboard arrangements (such as Dvorak) that became somewhat popular 20 or 30 years ago, computer keyboards are laid out similarly to the arrangement found on typewriters. This style is known as QWERTY, so called because these letters appear on the left side above the home row.

BTW, what I quoted above is a very long and somewhat cumbersome sentence.
Hornbein said:
I learned touch typing in freshman year of college.
I took a typing class in high school back in the early 60s. When I was in the Army, after basic training, my AIT (advanced individual training) was as a clerk-typist, so I spent most of 8 weeks using typewriters. I eventually got up to 60 wpm. I didn't realize it at the time, but that skill was very advantageous for the computer programming I've done in the past 50+ years.
 
  • #35
Mark44 said:
I took a typing class in high school back in the early 60s.
I took it in high school as well. I think that I was the only guy there. It definitely has come in handy over the years.
 
  • Like
  • Agree
Likes berkeman and Mark44
  • #36
I knew a coworker who taught us Fortran and COBOL programming at GE who had been a court stenographer in a previous career. It was interesting to see him work on the now-classic Western Electric Model 32 Teletype with paper tape feed.

He sat bolt upright in the chair, his hands in a ready position. The instant a response came back from the computer, he typed in another command just as quickly, if not faster.

The model 32 responded at a rate of 10 characters per second:

Telex_machine_ASR-32.webp


As a side note, we had a very fast keypunch operator. One time, a keypunch salesman came to our site to promote the latest model machine, which he claimed would never have a pause or jam.

Our keypuncher got on the machine and instantly hit her stride. There was a pause as she quickly reached the character buffer limit. He was flabbergasted.

She was typing at a rate over 10-12 cps, which the machine could not handle, even with a keystroke buffer.
 
Last edited:
  • #37
jedishrfu said:
She was typing over the 140 cps rate
Typo? Or cps isn't characters per second?
 
  • #38
berkeman said:
Typo? Or cps isn't characters per second?
Thanks @berkeman, I fixed the rate. It should have been 10-12 cps. The 140 was a WPM rate that I conflated in my post.

The machine limit of an IBM 029 keypunch machine was 10-12 cps. Its buffer was designed to allow the operator to type continuously without having to stop and wait for the machine.

She was able to go beyond it consistently and would have to wait for the machine, thus confounding the salesman.
 
  • #39
I learned touch-typing in High School.
"Fingers on the home keys" isn't the best starting point when coding in most computer languages - especially for the right hand.
Most of the time, my index fingers are over the "F" and "L" rather than "F" and "J". And when there is a lot of numbers, it's roughly the "R" and "I".

The QWERTY keyboard is widely used - even in countries such as Japan. And if you ever attempted to type on a Japanese typewriter, the reason would become very clear.
 
  • #40
jedishrfu said:
When I started out programming, there were no keyboards to type on. We used coding sheets to enter our code and then submitted them to keypunch services for conversion into a card deck.
In the early 70's, I used both the coding sheets and the keypunch machines. In college, it was a batch programming on an IBM 1620. So, write it up, transcribe it to a coding sheet, check it, wait for a keypunch, type it up and check as you typed, read through the card deck to discard bad cards, and finally, if any cards were still bad, repunch them. Since you could only get 2 or 3 compiles in per day, it was important to get it right on every try. But with so many opportunities to recheck, at one point I was able to go 3 months without a programming error ever making it to the computer.
 
  • #41
One thing about touch typing on a typewriter that has gone away is the discipline to get it right. Hitting the backspace key is so much easier than getting out the little bottle of "white out" or crumpling up the whole page in frustration. There were typewriters that had a white correction tape built in so you could do a kind of backspace but for the most part you just had to be good. You had to. With computers my error rate is astronomical but my overall throughput is better. It used to be even better still with my old IBM keyboard. Now I have an Apple keyboard. What a piece of junk it is!
 
  • Informative
Likes symbolipoint
  • #42
In terms of commenting/documenting code, good code is often self-documenting. Functions, variables and objects should be named in such a clear way, that it is obvious to most readers what is happening and what each part is doing. When something unclear or unorthodox needs to be done by the original programmer, then it is helpful to see a comment on why they decided to do it that way. I have seen plenty of code where a function is defined and it is double f(double x) { ... }, not very helpful, and no I don't want to read long lines of comments, when you could have just named things better.


For touch typing, no harm in having the skill. But one of the main problems with code, is that most coders just dive straight into writing the code, eager to solve the problem. Then spend ages refactoring, or re-writing completely, because they rushed in. Then spend another bunch of time writing unit tests, then realise actually they should have written it in a different way altogether. So typing isn't the key time-saver imo
 
  • Like
Likes symbolipoint
  • #43
jackjack205,
still touch-typing is very useful. One less aspect of stress. Fingers have an automated way of finding most of the keys and characters.
 
  • #44
I thought fast touch typing is only required in computer science if one plans to be a black hat hacker. In an anime, I saw this hacker girl was also able to type with her foot also.
 

Similar threads

  • · Replies 40 ·
2
Replies
40
Views
5K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 14 ·
Replies
14
Views
5K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 32 ·
2
Replies
32
Views
2K
  • · Replies 11 ·
Replies
11
Views
3K
Replies
3
Views
3K
Replies
24
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
Replies
10
Views
4K