Software Engineering: Politics, Religion, and Coding Standards

12 May 2026

Software Engineering: Politics, Religion, and Coding Standards

I have learned a lot throughout this semester. However, there are certain topics that resonate with me more than others. Along with coding standards and agile project management, ethics is one of the most important topics. The power to manipulate and manage computers is meant to be used, safely, efficiently, and responsibly.

There are three things you never bring up in a conversation: Politics, religion, and coding standards. Coding standards are like the religions of the computer world. You have entire denominations of standards taking up arms against one another in great holy wars on StackOverflow, Reddit, or—god forbid—MySpace.

"The bracket comes before the line break!"

"Heretic" The bracket comes after the line break!"

For the record, the bracket comes after the line break

Jokes aside, all coding standards are valid in their own way, and as long as the entire team is on the same page, then there shouldn't be any problems. I will parrot what one of my mentors, Mark Nelson, once told me: "When we program, we're really talking to two audiences: The computer and other programers". Coding standards are meant to make our lives easier. It provides a rare clarity amidst bedlam, and it's important we stick to them. There are already so many sources of error, the last thing we need would be to introduce another by naming a variable "thing".

As an engineering student, I was required to take a class in ethics. This class revealed a myriad of ethical dilemmas we don't encounter in our everyday lives. For example, if you were hired by company A after leaving a toxic work environment in company B, and the CEO of company A asks about company B's trade secrets, is it ethical to divulge these secrets? Instinctively, or perhaps emotionally, we are led to believe that if company B wanted to keep a secret, then perhaps they should have treated their workers right. However, two wrongs do not make a right. Even though company B treated you poorly, you are still obligated to keep their secrets. Another contentious topic would be the use of generative AI in creating artwork. I firmly believe this is unethical especially when the image generated is meant match a particular style. AI is, for a lack of better terms, stupid. It can do a great many things, but only if it's trained to do so. An AI model trained on van Gogh cannot generate Beksinski. Thus it follows that an AI model that can generate Pikachu must have used images of Pikachu as reference, otherwise it would have no idea what Pikachu looks like (unless the prompt was extremely detailed, of course).

I enjoy agile project management. It allows for a more dynamic style of development. Using Kung Fu Panda as a reference, if waterfall project management was Master Shifu, then agile project management is Master Oogway. I suppose that's a very round about way of linking waterfall to Confucianism and agile to Taoism. The primary tenants of Taoism revolve around non-action and the natural order of things. It can be poorly summarized by "non-interventionist" and "go with the flow". Tasks are done as they come. Multiple tasks can be worked on at the same time and progress is meant to be flexible. Where as in Confucianism, there is a very rigid hierarchy centered around filial piety. Father is to son as Emperor is to nation. In waterfall project management, certain tasks must be complete before another is started. This means multiple tasks aren't typically worked on at the same time. As a bit of a Taoist myself, I personally prefer agile project management.