想的情况下，应对变化的环境时无需修改代码，只要修改资源，从而显着简化了工作。开发团队需要人了解其他语言和文化；而这样的人才，可能难以寻觅。而且资源的复制也可能成为维护恶梦。例如，如果某个语言中显示给用户的信息变化了，其他的翻译版本都要随之变化。Gettext之类软件库有助于解决这一问题。由于自由软件自由地修改和再分发，因此它比较容易国际化。当KDE拥有70个语言版本时，大多数专有软件只提供商业上有利可图的语言版本。当然很多自由软件由于程序结构设计的原因几乎难以国际化，比如HandBrake。