Summary: Combinedly, to add a language translation functionality to a program. Separately, Internationalisation: To make a program capable of handling translation. Localisation: Provide translations.
Generally, we use the words "Internationalisation" and "Localisation" interchangeably to represent translation functionality.
However, there is a difference between these two words.
Combined, it is true that "Internationalisation and Localisation" mean adding translation functionality to a program.
However Separately,
"Internationalisation" (i18n) means making a program capable of adapting a translation, "Localisation" (l10n) means providing the translations.
For example, in Laravel, when we write
We are doing internationalisation (i18n). By wrapping content inside __(), we are adding Internationalisation (i18n) functionality to a website.
And when we provide translation .json files, we are doing localisation (l10n).
For example
So adding translation is a 2-step process. 1) Make the program capable of supporting translation (i18n) and 2) provide translations to a program (l10n).
Google has such translation functionality.
It allows user visit your website more conveniently, as he/she is seeing content in the language he/she is understand.
Because there are 18 characters between the characters 'I' and 'N' in the word "Internationalisation".
Because there are 10 characters between the characters 'L' and 'N' in the word "Localisation".