diff --git a/docs/adding-a-package-manager.md b/docs/adding-a-package-manager.md
index d7c6a5637525d78b4be712a4830e2bd6bd31c9b8..41048820af18d337614ba715cef25d5d334959b6 100644
--- a/docs/adding-a-package-manager.md
+++ b/docs/adding-a-package-manager.md
@@ -24,15 +24,15 @@ module.exports = {
   extractDependencies,
   filePattern,
   getPackageUpdates,
-  parentManager,
+  language,
   resolvePackageFile,
   updateDependency,
 };
 ```
 
-##### parentManager (optional)
+##### language (optional)
 
-This is used when more than one package manager share common characteristics. e.g. docker-compose, circleci and gitlabci all specify "docker" as their parent manager and inherit all config settings from there.
+This is used when more than one package manager share settings from a common language. e.g. docker-compose, circleci and gitlabci all specify "docker" as their language and inherit all config settings from there.
 
 ##### filePattern
 
diff --git a/lib/manager/circleci/index.js b/lib/manager/circleci/index.js
index 068d2f113c541faeda6070bcc9c08be4f85118ec..2b674babc7ce39226c0aa796c9999ebd2c7334e4 100644
--- a/lib/manager/circleci/index.js
+++ b/lib/manager/circleci/index.js
@@ -4,13 +4,13 @@ const { updateDependency } = require('./update');
 
 const filePattern = new RegExp('^.circleci/config.yml$');
 const contentPattern = new RegExp('(^|\\n)\\s*- image: ');
-const parentManager = 'docker';
+const language = 'docker';
 
 module.exports = {
   contentPattern,
   extractDependencies,
   filePattern,
   getPackageUpdates,
-  parentManager,
+  language,
   updateDependency,
 };
diff --git a/lib/manager/docker-compose/index.js b/lib/manager/docker-compose/index.js
index 3f5ed7f32aad7407cc6800a41837b5b2fb13f4ec..0618fe466e8536976a5bd775c9ca768eee374e8b 100644
--- a/lib/manager/docker-compose/index.js
+++ b/lib/manager/docker-compose/index.js
@@ -5,14 +5,14 @@ const { updateDependency } = require('./update');
 
 const filePattern = new RegExp('(^|/)docker-compose[^/]*\\.ya?ml$');
 const contentPattern = new RegExp('(^|\\n)\\s*image:');
-const parentManager = 'docker';
+const language = 'docker';
 
 module.exports = {
   contentPattern,
   extractDependencies,
   filePattern,
   getPackageUpdates,
-  parentManager,
+  language,
   resolvePackageFile,
   updateDependency,
 };
diff --git a/lib/manager/index.js b/lib/manager/index.js
index ef1a9e19bfc642b1138ddcaa2538eeba146bfefe..295aa70b190be12773fd7a2cb88597bf4d0ec63d 100644
--- a/lib/manager/index.js
+++ b/lib/manager/index.js
@@ -41,14 +41,14 @@ async function detectPackageFiles(config) {
   );
   for (const manager of managerList) {
     logger.debug(`Detecting package files (${manager})`);
-    const { parentManager } = managers[manager];
+    const { language } = managers[manager];
     // Check if the user has a whitelist of managers
     if (
       config.enabledManagers &&
       config.enabledManagers.length &&
       !(
         config.enabledManagers.includes(manager) ||
-        config.enabledManagers.includes(parentManager)
+        config.enabledManagers.includes(language)
       )
     ) {
       logger.debug(manager + ' is not on the enabledManagers list');
@@ -60,8 +60,8 @@ async function detectPackageFiles(config) {
       continue; // eslint-disable-line no-continue
     }
     // Check if the parent is manually disabled
-    if (parentManager && config[parentManager].enabled === false) {
-      logger.debug(manager + ' parentManager is disabled');
+    if (language && config[language].enabled === false) {
+      logger.debug(manager + ' language is disabled');
       continue; // eslint-disable-line no-continue
     }
     const files = [];
@@ -194,12 +194,9 @@ async function resolvePackageFiles(config) {
     if (managers[manager].resolvePackageFile) {
       return managers[manager].resolvePackageFile(config, packageFile);
     }
-    const { parentManager } = managers[manager];
-    const parentManagerConfig = parentManager ? config[parentManager] : {};
-    const managerConfig = mergeChildConfig(
-      parentManagerConfig,
-      config[manager]
-    );
+    const { language } = managers[manager];
+    const languageConfig = language ? config[language] : {};
+    const managerConfig = mergeChildConfig(languageConfig, config[manager]);
     packageFile = mergeChildConfig(managerConfig, packageFile);
     logger.debug(
       `Resolving packageFile ${JSON.stringify(packageFile.packageFile)}`
diff --git a/lib/manager/nvm/index.js b/lib/manager/nvm/index.js
index 57f3860c9190cecf308635352bfbba87363fb4d5..abcd005bc521daa956feb1e36130a975cd590e89 100644
--- a/lib/manager/nvm/index.js
+++ b/lib/manager/nvm/index.js
@@ -3,12 +3,12 @@ const { getPackageUpdates } = require('./package');
 const { updateDependency } = require('./update');
 
 const filePattern = new RegExp('^.nvmrc$');
-const parentManager = 'node';
+const language = 'node';
 
 module.exports = {
   extractDependencies,
   filePattern,
   getPackageUpdates,
-  parentManager,
+  language,
   updateDependency,
 };
diff --git a/lib/manager/pip_requirements/index.js b/lib/manager/pip_requirements/index.js
index a405b6d489411cb033f611f2976c023eb4c4b963..96ffb634fa096d8bf91b6888527ab5493b3de631 100644
--- a/lib/manager/pip_requirements/index.js
+++ b/lib/manager/pip_requirements/index.js
@@ -4,13 +4,13 @@ const { updateDependency } = require('./update');
 
 const filePattern = /(^|\/)([\w-]*)requirements.(txt|pip)$/;
 const contentPattern = new RegExp(`^${packagePattern}==`);
-const parentManager = 'python';
+const language = 'python';
 
 module.exports = {
   contentPattern,
   extractDependencies,
   filePattern,
   getPackageUpdates,
-  parentManager,
+  language,
   updateDependency,
 };
diff --git a/lib/manager/travis/index.js b/lib/manager/travis/index.js
index 4feb1b8da0753e137dc1e8a131189120a143a3a2..4752f04cc887f9a4026e1bed14ce5cd06cc97685 100644
--- a/lib/manager/travis/index.js
+++ b/lib/manager/travis/index.js
@@ -4,13 +4,13 @@ const { updateDependency } = require('./update');
 
 const filePattern = new RegExp('^.travis.yml$');
 const contentPattern = new RegExp('(^|\\n)node_js:\\n');
-const parentManager = 'node';
+const language = 'node';
 
 module.exports = {
   contentPattern,
   extractDependencies,
   filePattern,
   getPackageUpdates,
-  parentManager,
+  language,
   updateDependency,
 };
diff --git a/test/manager/index.spec.js b/test/manager/index.spec.js
index d4fff3a8e10ca6c70dc0231518f59087d5aec2f9..7c6edbe566e32dec539fc2dc6a628e25f22296bc 100644
--- a/test/manager/index.spec.js
+++ b/test/manager/index.spec.js
@@ -29,7 +29,7 @@ describe('manager', () => {
       const res = await manager.detectPackageFiles(config);
       expect(res).toHaveLength(0);
     });
-    it('skips if parentManager is disabled', async () => {
+    it('skips if language is disabled', async () => {
       platform.getFileList.mockReturnValueOnce([
         'package.json',
         '.circleci/config.yml',
diff --git a/website/docs/_posts/2017-10-05-configuration-options.md b/website/docs/_posts/2017-10-05-configuration-options.md
index 81317836153fde218c0d56fcd1c5a77622a178ba..dfaac12bad3aea54c347b71395149d9cdb9d3d23 100644
--- a/website/docs/_posts/2017-10-05-configuration-options.md
+++ b/website/docs/_posts/2017-10-05-configuration-options.md
@@ -172,11 +172,11 @@ Set this value to 'patch', 'minor' or 'major' to have Renovate update the versio
 
 Configuration object for CircleCI yaml file renovation. Also inherits settings from `docker` object.
 
-| name          | value  |
-| ------------- | ------ |
-| type          | object |
-| default       | {}     |
-| parentManager | docker |
+| name     | value  |
+| -------- | ------ |
+| type     | object |
+| default  | {}     |
+| language | docker |
 
 ## commitBody
 
@@ -327,11 +327,11 @@ Configuration specific for Dockerfile updates.
 
 Configuration object for Docker Compose yaml file renovation. Also inherits settings from `docker` object.
 
-| name          | value  |
-| ------------- | ------ |
-| type          | object |
-| default       | {}     |
-| parentManager | docker |
+| name     | value  |
+| -------- | ------ |
+| type     | object |
+| default  | {}     |
+| language | docker |
 
 ## enabled
 
@@ -716,11 +716,11 @@ See https://renovateapp.com/docs/deep-dives/private-modules for details on how t
 
 Configuration specific for `.nvmrc` files.
 
-| name          | value  |
-| ------------- | ------ |
-| type          | object |
-| default       | { }    |
-| parentManager | node   |
+| name     | value  |
+| -------- | ------ |
+| type     | object |
+| default  | { }    |
+| language | node   |
 
 For settings common to all node.js version updates (e.g. travis, nvm, etc) you can use the `node` object instead.
 
@@ -1221,11 +1221,11 @@ It is only recommended to set this field if you wish to use the `schedules` feat
 
 Configuration specific for `.travis.yml` files.
 
-| name          | value              |
-| ------------- | ------------------ |
-| type          | object             |
-| default       | { enabled: false } |
-| parentManager | node               |
+| name     | value              |
+| -------- | ------------------ |
+| type     | object             |
+| default  | { enabled: false } |
+| language | node               |
 
 For settings common to all node.js version updates (e.g. travis, nvm, etc) you can use the `node` object instead.