¿Soy inmoral por usar un nombre de variable que difiere de su tipo solo por mayúsculas y minúsculas?

Por ejemplo, tome este código:

var person = new Person();

o para ustedes Pythonistas:

person = Person()

Me dicen constantemente lo malo que es esto, pero aún no he visto un ejemplo de la inmoralidad de estas dos líneas de código. Para mí, persona es una persona y tratar de darle otro nombre es una pérdida de tiempo. Supongo que en los días previos al resaltado de sintaxis, esto habría sido un gran problema. Pero en estos días, es bastante fácil distinguir un nombre de tipo aparte de un nombre de variable. Diablos, incluso es fácil ver la diferencia aquí en SO.

¿O hay algo que me falta? Si es así, sería útil si pudiera proporcionar un ejemplo de código que causa problemas.

Respuestas a la pregunta(30)

Su respuesta a la pregunta