Introduction to Programming in Java : An Interdisciplinary Approach