Sander,
You're right and I appreciate it. In the meantime, as a beginner AngularJS learner, this is Phase 1 for me, that is, I'd like to get things to work first, especially to learn more about two way data binding (which I seem to have got a hang of it), then code-reuse with service or factory (this part, I still need to chew on), once I get comfortable with all this, then, move to Phase 2, doing much better including best practice etc.
Having said that, I'm already learning to make code more efficient with angularJS (but that's not the priority for me for the moment),
for instance, for data addition, basic code for FORM inputs would look like this:
$scope.frmdata.push($scope.field1, $scope.field2, $scope.field3);
but now I know the following code is much better:
$scope.frmdata.push($scope.contact);
while the FORM looks like this:
<input type="text" ng-model="contact.field1">
<input type="text" ng-model="contact.field2">
<input type="text" ng-model="contact.field3">