As a trainer, one of the things that I like my students to do is get rid of 'physical limitations' that can reduce your actual productivity. As I work as a developer in addition to my training duties, here are some stuff that make me better.
Wireless Keyboard and Mouse
In a modern workplace, it is fairly difficult to find desktop machines being used by developers. From a purely maintenance perspective, it makes sense for the IT department to give out portables/laptops. Same goes to college students. It simply makes sense that your daily programming device is a portable.
However, I find that your speed improves much more if you club this with a wireless keyboard and mouse. The thing about the built in keyboard on the laptop, is that, it's crammed. The standard size of laptops is 15 inches, so your keyboard is no bigger than 14 inches. You also don’t get that tactile feedback when typing. The built in trackpad is good for occasional browsing but for heavy duty usage (which is a given whe you programming) the mouse is the only way to go.
I must also insist that the keyboard and mouse be wireless. You can have a basic wireless keyboard/mouse for 800 rupees (13 dollars) and never ever buy wired keyboard/mouse please.
Almost every IDE that you use has short cuts. In fact, they are sites dedicated entirely to shortcuts. Then, there are windows shortcuts that can turn you into a powerhouse developer.
For instance, when switching tabs, use Ctrl Tab. When switching between windows, use Ctrl Window. Then, there are page down, page up, ctrl + arrow keys, and Home and End keys. These keys will take some getting used to. In fact, if you are only now starting to use shortcuts, you will feel that the entire procedure is actually slowing you down. It will takes a while for you to remember the actual shortcut. You will begin to think, the mouse is better.
However, once you get past the steep learning curve, the shortcuts get built into the muscle memory and you will be saving minutes every day.
Also, using short cuts makes you look really cool. It does, and trust me on this.
There is no other to way to say. Your chose IDE will support regions and commenting. Please take a few minutes to write the necessary comments and divvy up the code into regions. Sure, when you are on a roll and coding away on all cylinders, you may feel that the comments and regions are holding you back.
The truth is, coding is simply a small portion of your role as a 'software developer'. Always aim to be a 'developer' and not just a 'coder' or a 'programmer'. Software development involves a lot of other things like testing and fixing bugs. It also involves adding new features at some later point. Consider that most software is built by teams. These comments and regions ensure that your code becomes readable.
Sure, writing comments and using regions will consume some time. In fact, I have spent more time writing comments and adding regions when compared to the actual code itself. However, when issues arise (and they always will) it becomes that much easier to narrow down to the actual problem location. This also leads to less time taken to fix issues.
From a long term perspective, when another developer takes over your projects (developers, as with any other professionals are constantly changing jobs, shifting roles and so on), she will be that much happier when she sees the comments and regions.
Follow me on twitter, facebook and instagram for more updates. Thanks!