Steps toward a Philosophy of Engineering