Derek Sivers

The Productive Programmer - by Neal Ford

The Productive Programmer - by Neal Ford

Go to the Amazon page for details and reviews.

I thought it was going to be more general or philosophical tips, but seemed to be more about IDE-specific tips instead. Then it crashed my Kindle (and still does). Oh well.

my notes

Productivity is defined as the amount of useful work performed over time. Someone who is more productive performs more effective work in a given time interval than someone less productive.

With many of the productivity hints in this book, you have to keep an active mindset to take advantage of these techniques. Recognizing the appropriate situation where one of them applies is half the battle. I constantly use clipboard history; I can’t imagine life without it now.

Up and down arrow keys, which is a brute-force way to get to previous commands. But, as I’ve stated before, searching is more effective than navigation. You can search your history to find the command in question faster than you can scan each entry as you walk back through them one at a

You can set VI mode in your *-nix environment by adding the following to your ~/.profile file:set -o viWhen you have VI mode set, you can hit Escape (which puts you in command mode), then / to put yourself in search mode. Type the search text, then hit Enter. The first match will be the most recent command that matches the search string. If that’s not the one you want, hit / followed by Enter to search for the next occurrence. Also in bash, if you have recently executed a command, you can hit the hotkey ! along with the first letter of the recent command to re-run it. The ! gives you access to the history directly. If you want to see your command-line history, execute the history command, which provides a numbered list of the commands you’ve executed,

Each time the pushd command is issued, it shows the existing directories already on the stack.

If you use a mouse to select a menu or tool button, he makes you undo your operation, then do it three times using the keyboard.

When you type a complicated construct for the second time, templatize it.

Key macro tools are also great for common phrases that you must type over and over.

Spend a little time each day to make every day more productive.

The higher the level of concentration, the denser the ideas.

find . -regex ".*Db\.java"

Selenium is an open source user acceptance testing tool for web applications. It allows you to simulate user actions by automating the browser via JavaScript.

Firefox browser plug-in called Selenium IDE. Selenium IDE allows you to record your interaction with a web application as a Selenium script, which you can play back through Selenium’s TestRunner or through Selenium IDE itself. While this is useful when creating tests, it is invaluable if you need to automate your interaction with a web application.

Timebox your efforts: allocate an exact amount of time for exploration and fact gathering. At the end of the timebox, re-evaluate objectively whether completely pursuing this task is feasible.