source layer their language software developed clients standard development information applications automated client windows staff products process developing access developers product needs functionality server services approach manual interface which driver provides based design allows system where systems macroview collection integration domain using framework business these tasks people other application example JoelLipman.Com