What to do next: meeting the challenge of programming-in-the-large