Columb,
Wouldn't you want to check the list before the deed is done? Your best performer could be the last in, and this exception not always can be factored in the program.
But I want to say a few words about the programmers making ethical decisions. If you mean by that humans in general, I agree with you. That's what I was talking about. The ethical decisions are made by humans. The robots are taking instructions.
But if you mean that ethical decisions are made by programmers as a profession, I would like to differ.
I got to use this example now.
Years ago, for my diploma project, I made a database system which helped doctors to select best candidates for an organ transplant. Those people were all on waiting list and had different urgency level, besides all other physical/immune parameters and health conditions. People could be more or less compatible with an organ, which makes chances of the organ be accepted by the body higher; or incompatible at all, which can present life-threatening complications. Even the most compatible person wouldn't be operated during some other acute health problems, like flu, etc.
When organs suitable for transplantation come along, the decision should be made very fast, as organs have very limited life span while they are still usable, and some time is required to select and prepare for the surgery the right person from the list. What my system did is helped doctors to speed the task of selecting a list of suitable people for this organ, in order of decreasing compatibility, by multiple criteria.
Did I, as a programmer, perform an ethical task? No (creative, yes). I maintain this, and my instructor/supervisor maintained that back then when I asked ethical questions about my work. Who did the ethical decisions, then? The end users – the doctors did. Even the doctors with whom I closely worked to create a comprehensive set of rules for this system (robot?) and who admitted that the system did what they needed and of tremendous help to them, didn't use the resulting list as-is. The task of reviewing each and every patient for final selection, the ethical task, was on them.
But in the end, yeas, all creative, ethical and expert tasks were left to the humans. The robot, e.g. the program with the computer, was just the tool.