diff --git a/.all-contributorsrc b/.all-contributorsrc
index 6d60fe7e..e3708533 100644
--- a/.all-contributorsrc
+++ b/.all-contributorsrc
@@ -761,6 +761,33 @@
"contributions": [
"content"
]
+ },
+ {
+ "login": "georgem3",
+ "name": "George Mamer",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/20108934?v=4",
+ "profile": "http://twitter.com/georgemamer",
+ "contributions": [
+ "content"
+ ]
+ },
+ {
+ "login": "leimonio",
+ "name": "Konstantinos Leimonis",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/1969742?v=4",
+ "profile": "https://github.com/leimonio",
+ "contributions": [
+ "content"
+ ]
+ },
+ {
+ "login": "Zybax",
+ "name": "Oliver Lluberes",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/22094453?v=4",
+ "profile": "https://github.com/Zybax",
+ "contributions": [
+ "translation"
+ ]
}
],
"projectName": "nodebestpractices",
diff --git a/.operations/operations-manual.md b/.operations/operations-manual.md
index e42fc53d..65daf19f 100644
--- a/.operations/operations-manual.md
+++ b/.operations/operations-manual.md
@@ -40,17 +40,17 @@ Each month, a maintainer on call will open an issue for maintenance work and rec
| Month | Maintainer on call |
|---------|--------------------|
-| 10/2018 | Sagir |
-| 11/2018 | Bruno |
-| 12/2018 | Yoni |
-| 01/2019 | Kyle |
-| 02/2019 | Sagir |
-| 03/2019 | Bruno |
-| 04/2019 | Yoni |
-| 05/2019 | Kyle |
-| 06/2019 | Sagir |
-| 07/2019 | Bruno |
-| 09/2019 | Yoni |
+| 10/2019 | Yoni |
+| 11/2019 | Bruno |
+| 12/2019 | Kyle |
+| 01/2020 | Yoni |
+| 02/2020 | Bruno |
+| 03/2020 | Kyle |
+| 04/2020 | Yoni |
+| 05/2020 | Bruno |
+| 06/2020 | Kyle |
+| 07/2020 | Yoni |
+| 09/2020 | Bruno |
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index c54d9329..1ab823a9 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -116,6 +116,11 @@ Thanks goes to these wonderful people who have contributed to this repository!
 Eduard Kyvenko π |
 Deyvison Rocha π |
+
+  George Mamer π |
+  Konstantinos Leimonis π |
+  Oliver Lluberes π |
+
diff --git a/README.md b/README.md
index 14bdab07..0254f7ee 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@
@@ -22,6 +22,8 @@ Read in a different language: [**CN**](/README.chines
+###### Our steering committee member, Yoni Goldberg, will speak this month about Node.js practices at [Verona](https://2019.nodejsday.it), [Kharkiv](https://kharkivjs.org) and Atlanta (more details soon)
+
###### Built and maintained by our [Steering Committee](#steering-committee) and [Collaborators](#collaborators)
# Latest Best Practices and News
diff --git a/README.russian.md b/README.russian.md
index b1b3aeed..a2e3c7ad 100644
--- a/README.russian.md
+++ b/README.russian.md
@@ -9,7 +9,7 @@
@@ -22,6 +22,8 @@
+###### Π§Π»Π΅Π½ Π½Π°ΡΠ΅Π³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΈΡΠ΅ΡΠ° ΠΠΎΠ½ΠΈ ΠΠΎΠ»Π΄Π±Π΅ΡΠ³ Π² ΡΡΠΎΠΌ ΠΌΠ΅ΡΡΡΠ΅ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅Ρ ΠΎ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Node.js Π² [ΠΠ΅ΡΠΎΠ½Π΅](https://2019.nodejsday.it), [Π₯Π°ΡΡΠΊΠΎΠ²Π΅](https://kharkivjs.org ) ΠΈ ΠΡΠ»Π°Π½ΡΠ΅(ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΠΊΠΎΡΠΎ)
+
###### Π‘ΠΎΠ·Π΄Π°Π½ΠΎ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π½Π°ΡΠΈΠΌ [ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠΈΠΌ ΠΊΠΎΠΌΠΈΡΠ΅ΡΠΎΠΌ](#steering-committee) and [ΡΠΎΠ°Π²ΡΠΎΡΠ°ΠΌΠΈ](#collaborators)
# ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΈ Π½ΠΎΠ²ΠΎΡΡΠΈ
diff --git a/sections/projectstructre/configguide.md b/sections/projectstructre/configguide.md
index 6e7b3663..df340db0 100644
--- a/sections/projectstructre/configguide.md
+++ b/sections/projectstructre/configguide.md
@@ -14,6 +14,8 @@ When dealing with configuration data, many things can just annoy and slow down:
4. some advanced configuration scenarios demand to inject configuration values via command line (vargs) or sync configuration info via a centralized cache like Redis so multiple servers will use the same configuration data.
+5. the application should fail as fast as possible and provide the immediate feedback if the required environment variables are not present at start-up, this can be achieved by using [convict](https://www.npmjs.com/package/convict) to validate the configuration.
+
Some configuration libraries can provide most of these features for free, have a look at npm libraries like [rc](https://www.npmjs.com/package/rc), [nconf](https://www.npmjs.com/package/nconf) and [config](https://www.npmjs.com/package/config) which tick many of these requirements.
diff --git a/sections/projectstructre/configguide.russian.md b/sections/projectstructre/configguide.russian.md
index 90648b28..52f2b87a 100644
--- a/sections/projectstructre/configguide.russian.md
+++ b/sections/projectstructre/configguide.russian.md
@@ -14,6 +14,8 @@
4. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΡΠ΅Π±ΡΡΡ Π²Π²ΠΎΠ΄Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ (vargs) ΠΈΠ»ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠ΅Ρ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Redis, ΡΡΠΎΠ±Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
+5. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠ²ΡΠ·Ρ, Π΅ΡΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ [convict](https://www.npmjs.com/package/convict) Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
+
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΡΠΈΡ
ΡΡΠ½ΠΊΡΠΈΠΉ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ, ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ npm, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ [rc](https://www.npmjs.com/package/rc), [nconf](https://www.npmjs.com/package/nconf) ΠΈ [config](https://www.npmjs.com/package/config), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΌΠ΅ΡΠ°ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΡΡΠΈΡ
ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ.