There are two ways to write error-free programs; only the third one works.
The most important skill for a computer scientist is problem solving. The ability to formulate problems, think creatively about solutions, and express a solution clearly and accurately.
"Always be prepared for the unexpected."