I am simultaneously in awe of the tech that it would take to pull this off and in complete revulsion at what was done.
It was interesting when I was in college to see which degrees required ethics classes and which ones didn't. Computer Science required us to take ethics classes. I assume because of the effects technology can have.
It is really subtle too. As one of my professors noted: "I'm sure none of you would write a 'BombJerusalem()' function, but you might write a 'Target(city)' function without realizing the implications."