It would be impossible to list all the people I consider to be good technical influences on me, but because of a conversation earlier, I had to think about it and realize that the people I've found most useful in shaping my technical taste are the people who have had the most *spiritual* impact on me.
Which... I dunno about that phrasing, I'm not a very woo person. But it's the same thing I often call "politics" or "values." It's very much using the moral engine part of the brain.
I think... everything else flows out from putting yourself in the shoes of the people and machines impacted by your work. You need to have the human best interest at heart, and a respect for the machine's time and energy too. Because what is the work except mediating between those two parties, right?
That brushes up against something I've talked about before. Humans have messy language because that's actually the more competent tool for navigating a messy world, the ambiguity is fit-for-purpose. Machines operate in a much stricter logical paradigm where nothing is ambiguous, because that's what you need for reliably stacking abstractions. Programming is the work of translating between these languages which do not have the same raw concepts available to them - a translation that can never be perfect because neither side is perfectly expressible in the other, so you need human judgment about what makes for the best translation, like keeping the heart of a poem intact while picking words that rhyme in the target language.
And, in that thread, I talked about how LLMs suck by delegating this exact part to a machine which cannot be "aligned" in the way that a human programmer can. But a human doesn't automatically have that alignment either. It's a skill. It's an ethos. It's a responsibility.