Naming has a social conventionGautier DI FOLCO February 04, 2024 [Software engineering] #software engineering #design
Few months ago, I have joined GDCR, ending the day with a software teaming in F#, with one letter identifiers as a constraint.
The goal was to work on the Mars Rover Kata.
The resulting code was cryptic and the main entry point was:
let p i c o =
pis the predicate making the position evolve
iis the initial/current position
cis the command (move, rotate left, rotate right)
ois the list of obstacle
It was not great but all the participants agreed on it, and we all knew what each identifier was representing.
Even if the example is extreme, when we try to implement the Ubiquitous Language we need some flexibility when choosing the names, so everyone has a common understanding.
The main point is, naming decision are always taken inside a group, not on your own.