20. Use Names You Would Use In Real Life
Clear, natural names make code faster to read and reviews kinder. A practical guide to naming things — nouns vs verbs, singular vs plural, and when to rename.

Good naming is one of the most important parts of programming. 🏷️ You read code far more often than you write it, and clear names help you understand it faster. With natural names, noise goes down, reviews get quicker (and kinder), and potential bugs often surface early—before they even exist.
1) Name what it is or what it does 🧭
- Classes/Components: nouns (what is it?). →
UserProfileCard,AuthenticationService,PriceCalculator - Functions/Handlers: verbs (what does it do?). →
calculatePrice(),fetchOrders(),getUser()
2) End with what it is 🔚
Sounds small, has a big effect in teams:
MenuButton= a button that lives in a menuButtonMenu= a menu made up of buttons
For English and Dutch speakers this feels natural: adjectives come before the noun (PrimaryButton, ErrorMessage). In Spanish or French it's often the other way around. If you work with international teams, this can be a challenge—make clear naming agreements to align.
3) Singular or plural? Use the "can I make one of it?" test 🔢
- Exactly one instance → singular:
user,order,menuItem,price - Contains multiple instances → plural:
users,orders,menuItems,prices
4) Always English (even in NL teams) 🌍
English keeps APIs consistent, documentation shareable, and search results useful. Use your domain language in English: Quotation, DeliveryWindow, LeadTime.
5) Rename when needed ✏️
Regularly ask yourself whether the name still fits. After refactoring, behavior may have changed and the name may no longer match. Don't hesitate to rename. Spending three minutes refactoring today saves thirty minutes explaining it on a call tomorrow.
Micro-checklist ✅
- Is it a thing (variable, class, component) → noun?
- Is it an action (function) → verb?
- Does the name end with what it is (
Modal,Service,Button)? - Singular for one instance, plural for collections?
- Uses domain language instead of
Util/Helper/Manager? - English, consistent across the whole codebase?
- Positive booleans:
is/has/can/should? - Willing to rename when you find something better?
Get those right, and your code starts reading like the real world it describes. 🌍


