π ΠΡΠΎΡΠΈΡΠ°Π»Π° Π² 2017
1) ΠΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°, ΠΠΆΠΎΠ½ Π‘ΠΎΠ½ΠΌΠ΅Π· (Soft Skills) - 2/5
ΠΠ½ΠΈΠ³Π° ΠΎ ΡΠ°Π·Π½ΡΡ
Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ
ΠΆΠΈΠ·Π½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°.
ΠΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΈΠ΄Π΅ΠΈ ΠΏΠΎ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΌΠΎΡΠΈΠ²Π°ΡΠΈΠΈ.
ΠΠΎ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΊΠ½ΠΈΠ³ΠΈ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»Π°ΡΡ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ²Π΅ΡΡ Β«ΠΊΠ°ΠΊ Π²Π»Π΅Π·ΡΡ Π² ΡΠ·ΠΊΠΈΠ΅ Π΄ΠΆΠΈΠ½ΡΡΒ» ΠΈ Β«ΠΊΠ°ΠΊ Π½Π°ΠΉΡΠΈ Π»ΡΠ±ΠΎΠ²ΡΒ» ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈΡΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΡΠΌΠ΅ΡΡΠ½ΡΠΌΠΈ.
2) Confident Ruby: 32 Patterns for Joyful Coding, Avdi Grimm - 5/5
ΠΠ½ΠΈΠ³Π° ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ
ΡΡΠ±ΠΈ-ΠΏΠ°ΡΡΠ΅ΡΠ½Π°Ρ
: Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², Π½ΠΎ Π΅ΡΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅.
ΠΡΠ΅Π½Ρ ΠΊΠ»Π°ΡΡΠ½Π°Ρ β ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΡΠΌΠΎΠ² βΠ½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρβ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ Ρ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ Π΄ΠΎ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ.
3) Growing Rails Applications in Practice, Henning Koch, Thomas Eisenbarth - 4/5
ΠΠΎΡΠΎΡΠΊΠ°Ρ ΠΊΠ½ΠΈΠ³Π° ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°ΡΡ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅Π»ΡΡΠ°Ρ
ΠΈ Π½Π΅ ΡΠΊΠ°ΡΡΠ²Π°ΡΡΡΡ Π² Ρ
Π°ΠΎΡ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ: ΠΏΡΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΠΎΡΠΌ-ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΠΎΠ½ΠΊΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΈ Ρ.Π΄., Π΅ΡΡΡ Π³Π»Π°Π²Π° ΠΏΠΎ ΡΡΠΎΠ½ΡΠ΅Π½Π΄Ρ.
ΠΠΎΠ»Π΅Π·Π½Π°Ρ ΠΊΠ½ΠΈΠ³Π°, Π½ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡΡ ΠΊ ΡΠΎΠ²Π΅ΡΠ°ΠΌ ΠΈ ΡΠΈΡΠ°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΠΏΠΎ ΡΠ΅ΠΌΠ΅.
ΠΠ±Π·ΠΎΡ ΠΊΠ½ΠΈΠ³ΠΈ Π½Π° mkdev
4) ΠΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, Π ΠΎΠ±Π΅ΡΡ ΠΠ°ΡΡΠΈΠ½ - 4/5
ΠΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π°, Π΅Ρ ΡΠ°ΡΡΠΎ ΡΠΎΠ²Π΅ΡΡΡΡ. Π Π½Π°ΡΠ°Π»Π΅ ΡΡΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΎ ΠΎΡΡΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ Π°Π²ΡΠΎΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ βΡΡΠΈΡ ΠΆΠΈΠ·Π½ΠΈβ. ΠΠΎ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΈΡΡ Π±Π°ΠΉΠΊΠΈ ΠΏΡΠΎ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ ΠΈ ΡΠΎΠ²Π΅ΡΡ ΠΏΠΎ ΠΎΡΠ΅Π½ΠΊΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° Π·Π°Π΄Π°ΡΠΈ.
5) Deadline. Π ΠΎΠΌΠ°Π½ ΠΎΠ± ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ, Π’ΠΎΠΌ ΠΠ΅ΠΌΠ°ΡΠΊΠΎ - 5/5
Π₯ΡΠ΄ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ ΠΊΠ½ΠΈΠ³Π°, ΡΠ°Π·Π²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅. ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ΅ΡΠΏΠ½ΡΡΡ ΠΈΠ΄Π΅ΠΈ ΠΏΠΎ Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΡΠΈΡΠ°Π»ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ Π½Π° ΡΡΡ ΡΠ΅ΠΌΡ, ΡΠΎ Π²ΡΡΠ΄ Π»ΠΈ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ.
ΠΠ· Π΄Π΅ΡΠ°Π»Π΅ΠΉ ΡΡΠΆΠ΅ΡΠ° ΠΌΠ½Π΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ Π΄Π°ΡΠ½ΡΠΈΡΡΠΈΠ½Π³ Π³Π΅ΡΠΎΠΈΠ½ΠΈ Π² Π²ΠΈΠ΄Π΅ ΡΠΎΠ±ΠΈΡΠ°Π½ΠΈΡ Π±ΡΡΡΠ»ΠΎΠΊ Π½Π° ΡΠ»ΠΈΡΠ΅ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π΅Ρ Π²ΠΎΠ·ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠ°ΡΡΠ΅ΡΠ΅ )
6) 99 Bottles of OOP: A Practical Guide to Object-Oriented Design, Sandi Metz, Katrina Owen - 5/5
TDD ΠΈ OOP Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ½ΠΈ β99 Π±ΡΡΡΠ»ΠΎΠΊ (ΠΏΠΈΠ²Π°)β
ΠΠΎΠΉ ΠΎΠ±Π·ΠΎΡ ΠΊΠ½ΠΈΠ³ΠΈ
7) Rails As She Is Spoke, Giles Bowkett - 5/5
ΠΠ½ΠΈΠ³Π° ΠΎΠ± Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΡ
Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ°Ρ
rails, ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΡΠΎ, ΠΎΠ½ΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ.
ΠΠ½ΠΈΠ³Π° 2012 Π³ΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΡΡΠ°ΡΠ΅Π»Π°, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π²Π΅ΡΠΈ ΠΏΡΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° ΠΈ ΠΠΠ Π² ΡΠ΅Π»ΠΎΠΌ.
8) Refactoring: Ruby Edition - 4/5
Π ΡΠ±ΠΈ-Π²Π΅ΡΡΠΈΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π² ΠΊΠΎΠ΄Π΅ (code smellβΠΎΠ²) ΠΈ ΠΈΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ.
ΠΠ΅ΡΡΠ°ΠΌΠΈ Π±ΡΠ»ΠΎ ΡΠΊΡΡΠ½ΠΎΠ²Π°ΡΠΎ ΡΠΈΡΠ°ΡΡ β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΡΠΌΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΠ΅, Π΄ΡΠΌΠ°Ρ, ΡΡΠΎΠΈΠ»ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ ΠΊΠ½ΠΈΠ³Ρ ΡΠ°Π½ΡΡΠ΅.
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΎΠ±ΡΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ ΠΏΠΎ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³Ρ ΠΈ Π³Π»Π°Π²Ρ ΠΏΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π°Π½ΡΠΈΠΏΠ°ΡΡΠ΅ΡΠ½Ρ.
9) Metaprogramming Ruby, Paolo Perrotta - 5/5
ΠΠ΄Π½Π° ΠΈΠ· Π»ΡΡΡΠΈΡ
ΠΊΠ½ΠΈΠ³, ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΡ
Π² ΡΡΠΎΠΌ Π³ΠΎΠ΄Ρ.
Π Π½Π°ΡΠ°Π»Π΅ Π°Π²ΡΠΎΡ ΡΠ°ΡΠΊΡΡΠ²Π°Π΅Ρ ΠΏΠΎΠ½ΡΡΠΈΠ΅ ΠΌΠ΅ΡΠ°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅, ΡΠ΅ΠΌ ΠΌΡ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ Π²ΠΈΠ΄Π΅ΡΡ Π² ΡΡΠ±ΠΈ ΠΈ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΠΏΡΠΈΡΠΌΠ°Ρ
ΠΌΠ΅ΡΠ°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (spells), Π΅ΡΡΡ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΡΠ΅Π½ΠΈΡΠΎΠ²Π°ΡΡΡΡ.
ΠΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡ, ΡΡΠΎ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΏΡΠΈΡΠΌΠΎΠ² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΠ· ΠΊΠΎΠ΄Π° Π³Π΅ΠΌΠΎΠ², Π² Ρ.Ρ. ΡΡΠ°ΡΡΡ
ΠΈ Π½ΠΎΠ²ΡΡ
Π²Π΅ΡΡΠΈΠΉ rails.
ΠΡΡ Π² ΠΊΠ½ΠΈΠ³Π΅ Π΅ΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΡΠ±ΠΈ, ΠΏΠΎΠΈΡΠΊΠ° ΠΈ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ².
10) Ruby Science, Thoughtbot - 4/5
ΠΠ½ΠΈΠ³Π° ΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ
ΠΠΠ ΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Ρ βΠ·Π°ΠΏΠ°Ρ
Π°ΠΌΠΈβ Π² ΠΊΠΎΠ΄Π΅.
ΠΡΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³Π° rails-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘ΠΊΡΡΠ½ΠΎΠ²Π°ΡΠΎ Π±ΡΠ»ΠΎ ΡΠΈΡΠ°ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
ΠΊΠ½ΠΈΠ³ β ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΠΈΠΊΠ°ΡΡΡΡ Ρ ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ Refactoring, POODR, Growing Rails Applications in Practice, Π½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ, ΠΏΡΠΎΠ±Π΅ΠΆΠ°Π²ΡΠΈΡΡ ΠΏΠΎ ΠΊΠ½ΠΈΠ³Π΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅Π² ΠΏΡΠΈΠΌΠ΅ΡΡ, Π±ΡΠ»ΠΎ Π½Π΅ Π»ΠΈΡΠ½ΠΈΠΌ.
11) Domain Driven Design Quickly, InfoQ - 4/5
ΠΡΠ°ΡΠΊΠΎΠ΅ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΠΡΠΈΠΊΠ° ΠΠ²Π°Π½ΡΠ° (Π½Π° 180 ΡΡΡΠ°Π½ΠΈΡ).
ΠΠΎΠ΄ΠΎΠΉΠ΄ΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ DDD Π½Π° Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅.
?) Designing Data-Intensive Applications in Practice, ΠΠ°ΡΡΠΈΠ½ ΠΠ»Π΅ΠΏΠΌΠΌΠ°Π½Π½.
(Π΅ΡΡ Π½Π΅ Π΄ΠΎΡΠΈΡΠ°Π»Π°)
ΠΠ²ΡΠΎΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π²Π΅Ρ ΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ
ΡΠ°Π±ΠΎΡΡ ΡΠ°Π·Π½ΡΡ
Π±Π°Π· Π΄Π°Π½Π½ΡΡ
Π½Π° ΡΠ°Π·Π½ΡΡ
ΡΡΠΎΠ²Π½ΡΡ
, ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, ΡΠ°Π·Π±ΠΈΡΠ°Π΅Ρ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄Π°.
ΠΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ.
Π‘ΡΠ°ΡΡΡ ΠΎ ΠΊΠ½ΠΈΠ³Π΅ Π½Π° Π₯Π°Π±ΡΠ΅ ΠΎΡ Β«ΠΠ ΠΠΈΡΠ΅ΡΒ»