Software developing is 0- understanding the "need"1- practicing best practices (design patterns)2- keeping in mind that you could have been an artist, but you are not. You are a hard knowledge worker 3- not worth inventing unless you deliver it on time4- mastering in "Search-Copy-Learn-Paste-Test"5- an achievement to write a software with less potential bugs rather than its features6- not playing puzzles with "objects" and creating life time "class" My vWorker Resume http://goo.gl/RwGXB