Елена обнови решението на 19.01.2015 09:06 (преди почти 10 години)
+REPOSITORY = 'https://github.com/ElieIvanova/ruby-retrospective-4'
+
+# Двадесет неща, които научих.
+#
+#
+# 1. Доброто стилистично форматиране на кода е важно.
+#
+# 2. Избирането на подходящи имена на променливите, методите, класовете.
+# Важно е те да носят смисъл и да не се избягват прекалено дългите такива,
+# aко се налага.
+#
+# 3. Влагането на тернарни оператори не е хубава практика. Използването
+# на if-else или case е за предпочитане, тъй като кодът става по-четим.
+#
+# 4. Използването на Enumerable, когато е възможно. Предоставя ни много
+# "благинки", които биха били полезни.
+#
+# 5. Използване на "по-удобни" методи, които Ruby ни дава(конкретен случай -
+# използването на Enumerable#select вместо Array#each, комбиниран с if, във
+# втора задача).
+#
+# 6. Планирането и дизайна на било то задачи за домашна работа или курсови
+# проекти заслужава достатъчно време, което да бъде отделено, защото ще се
+# спести след това по време на имплементацията(недообмислянето на дизайна
+# от моя страна във втора задача и излишният клас MixedFilter).
+#
+# 7. В голяма част от случаите if-else може да се замени с || или &&, което
+# прави кода по-кратък(например имплементацията ми на метода Directory#[]
+# в трета задача).
+#
+# 8. Използване на паралелното присвояване на стойности на параметри. Кратко е,
+# разбираемо и елегантно(File#parse и DirectoryParser#parse_named_object в
+# трета задача).
+#
+# 9. В Ruby има повече от един начин за деклариране на класови методи. За
+# предпочитане е синтаксисът def self.method_name... или class << self...,
+# когато имаме повече от един такива(отново в трета задача).
+#
+# 10. Трябва да се стремим към писането на кратък и ясен код, защото Ruby е
+# език, който позволява това.
+#
+# 11. Използването на регулярни изрази е практично решение в някои ситуации,
+# но винаги трябва да се внимава и да имаме "едно на ум".
+#
+# 12. Научих какво е DSL, как и за какво се използва и как може да си
+# дефинираме сами такъв.
+#
+# 13. Тестването е много важна и неразделна част от процеса на разработване.
+#
+# 14. Четенето на чужд код е добър инструмент за научаване на нови подходи за
+# реализация на проблеми, с които не сме се справили сами.
+#
+# 15. Изискването за спазване на skeptic ограниченията към всяка задача ми
+# хареса, защото те мотивира не просто да напишеш код, който да работи, а
+# да напишеш най-оптималния такъв.
+#
+# 16. Хареса ми организацията на курса. Хареса ми това, че освен конкретен
+# материал се преподават и основни неща, които са важни, но аз лично не съм
+# срещала да са застъпени в други дисциплини.