I18N
I18N ist eigentlich nur die Abkürzung für internationalization. Entwickler benutzen diese Abkürzung und gemeint ist das zwischen i und n genau 18 Buchstaben sind.
I18N bedeutet, dass ein Programm relativ leicht an die verschiedene sprachlichen und kulturellen Gegebenheiten anpassbar ist. Der Code wird von der eigentlichen Ausgabe getrennt.
L10N
L10N hat den gleichen Namensursprung gemeint ist hier localization.
L10N bedeutet, dass ein Programm an eine sprachliche und kulturelle Gegebenheit angepasst ("lokalisiert") wird. Das heißt: die Menüs, Hilfetexte, Ausgabeformat von Zeit und Datum, Farbengestalltung usw. angepasst werden.
Eine Anwendung in I18N/L10N programmiert, greift auf die i18n Bibliotheken zurück. Dadurch braucht ein Entwickler zu seinem eigentlichen Programm nur noch eine Sprachdatei zu schreiben, welche dann Menüs o.ä. in verschiedenen Sprachen zur verfügung stellt.
Momentan sind die meisten verbreiteten Sprachen mit I18N realisierbar, unter anderen wird Russisch, Spanisch, Französisch, Italienisch, Niederländisch, Koreanisch, Deutsch usw. unterstützt.
Gute Beispiele für solche Programme sind z.B. KDE, GNOME, OpenOffice usw.