What about building evil things for good people? Building good things for evil people? Who gets to write the source code of the `isEvil(foo)` function, and can I fork it if I disagree?
The section on automation seems deeply confused; first it says that automation must always be manually triggered by the people involved, then in the next sentence it provides guidance on scheduling cron jobs, which would seem to be ruled out by the manual triggering rule. Signing up users to an email list automatically and without a way for them to remove themselves is presented as an example of the kind of evil automation this would prevent, and I agree it should be prevented as I don’t like that either, but it goes on to demonstrate that the proposed rule also inhibits things I think are okay, like if I authenticate with TouchID I want my Mac to sign in with whatever credentials it has at its disposal.
The second section on never lying to or tricking users is similarly deeply flawed; it is motivated again by a good example of disallowing unreadable EULAs that sign away personal data, but again goes on to demonstrate its own overbroadness - which reaches so far that it absurdly claims that not solving the cache invalidation problem is a moral violation.
The third section is somehow worse still; in trying to make a developer ethically liable for anything anyone does with their code, it positions itself at odds with several of the most common and venerable open sources licenses that vast chunks of software have been built on and released under. Aside from the fact that this is simply unworkable on a level even Stallman would balk at, “opposing some of the most common licenses” should have clued in the author that their document does not align with most software developer moral codes.