The code I’m still ashamed of

This post by Bill Sourour bringing together code and ethics really resonated for me. He describes working as a software developer and doing some ruthless marketing for a questionable medical drug targeted at teenage girls:

Nothing that we were doing was illegal. As the youngest developer on my team, I was making good money for my age. And in the end, I understood that the real purpose of the site was to push a particular drug. So, I chalked this tactic up to “marketing.”

I was reminded of my first job as a software developer. The gig was not as bad as the one Sourour describes, but it still was somewhat shady. The company I worked then for was pretty deep in the Lead generation business, with work ranging from building landing pages for technically-fake zero-interest loan offers to sending literal spam email campaigns for medical insurance. It didn’t feel right to me from the start. But, I was happy to have gotten my foot in the door as someone who came into the field with very little experience and no CompSci background.

I like to think that during my time at that job, I gave some pushback against things they wanted me to put into websites that I thought were misleading or exploitative, but I did write some code that I am ashamed of, as well.

Luckily, I was fortunate enough that I was able to switch jobs to a much more reputable agency after a couple of months. But it sure was a sobering experience to be put on the spot and see myself rationalising the stuff I did every day for money.

Bill closes with a sort of mini-manifesto:

As developers, we are often one of the last lines of defense against potentially dangerous and unethical practices.

We’re approaching a time where software will drive the vehicle that transports your family to soccer practice. There are already AI programs that help doctors diagnose disease. It’s not hard to imagine them recommending prescription drugs soon, too.

The more software continues to take over every aspect of our lives, the more important it will be for us to take a stand and ensure that our ethics are ever-present in our code.