There was a season where I named things to sound smart.
Abbreviations only I understood. A helper called magic. Variables that made me feel like the author of something intricate.
Then I came back six months later and couldn’t read my own code.
The clever name protects your ego for a day and taxes every reader after. The boring name — pendingInvoices, hasExpired, retryCount — costs you nothing and pays out every time someone opens the file.
Now I treat a name like a promise. If I can’t say plainly what the thing holds, I don’t understand it well enough to have written it yet.
The best compliment my code gets now isn’t “clever.” It’s “obvious.” That one took me years.
– Serguey Asael Shinder
Leave a comment