На уровне общих принципов, т. к. некогда видео пилить:
1. Чем меньше кода, тем лучше
2. Названия в Ruby - слова английского языка без сокращений (за исключением общеизвестных аббревиатур)
3. Нельзя смешивать ввод-вывод (puts, gets) и "логику" в одном классе
4. Названия переменных и методов должны соответствовать содержанию и функции соответственно (скажем, its_about - мимо)
5. Требуется следовать известным ожиданиям и договорённостям. Класс совсем не похож на то, как предлагается использовать HTTParty в самой документации HTTParty, а должен быть очень похож.
6. Следует избегать "тревожного программирования". Например, не следует проверять типы на каждый чих - только в местах контакта с пользователем.
7. Следует избегать двух названий для одной и той же штуки. Не следует без необходимости делать разные имена у аргументов конструктора и instance-переменных.
8. attr_accessor - старший брат attr_reader
9. Стоит, по возможности, минимизировать количество аргументов у методов. Если не получается - keyword params (они же named arguments)