Ростислав обнови решението на 14.11.2011 05:38 (преди около 13 години)
+REPOSITORY = 'http://github.com/Gradinarov/ruby-retrospective-1'
+
+# Двадесет неща, които научих.
+#
+# 1. Не трябва да използвам puts вместо return. В противен
+# случай тестовете не могат да се изпълнят коректно.
+#
+# 2. flatten(1) изглажда даден масив по този начин:
+# [[1], [2], [[3], 4]].flatten(1)
+# => [1, 2, [3], 4]
+#
+# 3. Научих се да използвам метода map.
+#
+# 4. Не е нужно да използвам () след всеки метод без аргументи.
+#
+# 5. Възможно е да пиша условия на един ред, например:
+# execute if условие
+#
+# 6. Вместо да дефинирам собствени setter и getter методи, е
+# по-удобно да се използва attr_accessor.
+#
+# 7. Употребата на string.strip е еквивалентна на
+# string.lstrip.rstrip
+#
+# 8. По-добре е да се използва chomp! вместо tr!("\n", "") за
+# даден низ.
+#
+# 9. Научих се да се използвам метода select.
+#
+# 10. Мога да употребявам select и map едновременно, например:
+# arr.select{ |n| n.even? }.map{ |n| n*2 }
+#
+# 11. Научих, че if number e еквивалентно на if number != nil
+#
+# 12. Вместо:
+# number = 1
+# return number
+#
+# e по-добре да се използва return 1 или само 1
+#
+# 13. Мога да напиша require 'bigdecimal' и require
+# 'bigdecimal/util' в началото на файла, вместо в началото на
+# всеки клас.
+#
+# 14. Научих се да дефинирам модули и да ги използвам в класове.
+#
+# 15. Научих метода any? на Enumerable.
+#
+# 16. Научих метода none? на Enumerable.
+#
+# 17. Научих се да наследявам класове.
+#
+# 18. Писането на методи в Object не е добър стил.
+#
+# 19. Методът select може да се комбинира с first или last, за
+# да се извлече съответно първия или последния елемент.
+# Пример: coupon = @coupons.select { |iter| iter.name == name_of_coupon }.first
+#
+# 20. Не е задължително в началото на файла да поставям
+# #!/usr/bin/env ruby, за да работи програмата.