Question: I am currently writing a coding style guideline for junior devlopers, and I am curious if anyone uses list of common variable names (for basic concepts), to limit confusion in codebase? 

For example:

* for email address: **email** (and not: *mail*, *e-mail*, *address*, \*mail\_address\* ...)
* for database name: **dbname** (and not: *db*, *dbase*, *base*, *database*, \*database\_name\*, *dbn* ...)
* for file name with full qualified path: **filepath** (and not: *file*, *path*, \*file\_name\*, *pathtofile* ...)
* for relative file name (without path) : **filename** (and not: *file*, *name*, *f*, ...)
* for configuration object : **config** (and not: *configuration*, *conf*, *vars*, ...)

Do you use similiar conventions?

**Edit**:

To be precise: it is not about **formatting** convention (*camelCaps* or \*names\_with\_underscores\*) which tends to be language and project dependant, but about **naming** convention (*mail*, *email* or *courriel*), something which is common for all the languages (like convention of using *i*, *j*, *k* for iteration counters)

Answer: 
This is micro management of the worst kind. Just say "Try to use clear nonambiguous variable names." Tell them to prefer longer names and just use code completion to save typing.

Use pair programming and code review if you need to teach juniors to write code that makes sense to other people.

You need to trust them to do the right thing and correct them when they don't.

And don't make up your own conventions, it's very likely the language you're using already has conventions in its culture, like for example camelCaseForVariableNames in Java. Just follow those.
Many people usually prefer to adopt the conventions already adopted in the language they use.  

E.g. in java it would be **databaseName** and in C++ **database\_name**