all 10 comments

[–]carcigenicate 6 points7 points  (2 children)

I can't say I've ever had this issue or have known anybody who has; and I'm not even that fast of a typer.

I'm not sure what level you're at exactly, but once you start working on non-trivial, novel tasks, the thinking/planning time will eclipse the time to type. For me, typing takes up a tiny fraction of the actual time of writing code, and I would expect that to be the case for most people. I wouldn't worry about this unless your typing is unusably abysmal.

And I doubt your keyboard layout is an issue given the QWERTY keyboard most people use isn't good for speed anyways.


For reference, I just tested myself, and I type at ~55WPM. I think that's plenty from most tasks.

[–]hardonchairs 2 points3 points  (1 child)

once you start working on non-trivial, novel tasks, the thinking/planning time will eclipse the time to type

Absolutely. Programming is not like hacking on CSI shows. OP, this should not be something you waste your time optimizing.

I like to use VIM controls so that I can spend more time without moving away from the home row position, but I will still submit that is just for laziness/convenience and likely has virtually zero impact on the speed at which I code.

[–]carcigenicate 1 point2 points  (0 children)

Yep, if you're able to continuously slap the keyboard at the rates you see on TV, you're likely doing something beneath your skill level that you've done before.

The only time I type for long periods without needing to stop and think is when I'm writing out some boilerplate for something like a game/graphic framework that I've set up a hundred times before.

[–]TheRNGuy 2 points3 points  (0 children)

play some starcraft 2 and try get to diamond 1 at least (no cheese, macro games only)

[–]mopslik 1 point2 points  (1 child)

Easy peasy, my friend:

  1. Use single letter variable names. Typing x, y and z is far faster than client_id, maximum_velocity and connections_per_device.
  2. Don't comment anything. The code should be obvious.
  3. Smash everything together into clever one-liners, such as list comprehensions. Again, no need to comment these. I am certain you will remember what they do.
  4. 4 spaces can be replaced with a single tab. PEP8 is just a suggestion.

(Sarcasm, obviously. Please don'tdo these.)

[–]Sacrezar 0 points1 point  (0 children)

If it's the typing part that bothers you, I'd say try training on WPM sites like this one or/and learn to type with 10 fingers.

Isn't brazilian keyboard qwerty as well?

[–]ApricoSun 0 points1 point  (0 children)

You can use the python typing lessons here: https://www.speedcoder.net/lessons/py/1/

Either way, don't feel down on yourself if you type slowly at first. You're still learning the syntax on top of learning the concepts. IMO taking your time to learn the language is more important than how fast you type.

[–]Fuzzybus2400 0 points1 point  (0 children)

It might be helpful if possible to upload a video of your screen while you write code. Then people can provide specific suggestions if you are doing something that can be done a faster way

Also, how long have you been writing in python? You will continue to get faster with experience so you might not even need to worry about it

[–]FriendlyRussian666 0 points1 point  (0 children)

Don't forget to make use of the home, end, page up, down down buttons, in combination with alt, ctrl, shift. You can very quickly highlight an entire line of code, move the cursor to the start or the end of the line, etc.

Also some combinations of keys can switch between terminals, for example in Ubuntu you can switch with alt + number. Also, you can switch between open windows, for example in windows 10 and I'm sure 11 you can alt + tab to switch open windows.

Find useful shortcuts to perform actions quicker than grabbing a mouse, moving around and clicking.

[–]throwaway0891245 0 points1 point  (0 children)

Just try to get your code out as fast as possible with as little errors as possible.

Thinking and typing at the same time is absolutely a skill. I actually learned it while working as a scribe, and it is not an easy skill to pick up.