"It should be noted that no ethically-trained software engineer would ever consent to write a DestroyBaghdad procedure. Basic professional ethics would instead require him to write a DestroyCity procedure, to which Baghdad could be given as a parameter." - Nathaniel Borenstein
I wonder if that also applies to DestroyPoliticalParty and DestroyInstitution?
Apparently not... sigh
ReplyDeleteEthics be damned, you either write the program or lose your job...on the mild side. Extreme side? Find another way to make a living.
ReplyDeleteThis was not originally intended to be humor by Borenstein but is now seen that way by most programmers.
DeleteOf course they would write a program DestroyCity(Baghdad) and keep a copy for their next gig. They charge the full number of hours for DestroyCity(Paris) or DestroyCity(Harare) or DestroyCity(Mountain_View) even though it takes but a minute to change the target.
Writing software where parameters are passed is modular and, in the end, more cost effective because it can be validated a piece-at-a-time.
My attempt at lofty observation is that the political parties and social institutions that are currently on the winning side of social media could very quickly find themselves downrange simply by virtue of how software engineers think.