Quite interesting and useful talk from Dave Thomas, back from 2009.
Self - if you understand "self", and if you can work out what "self" is, at any point in your running code, you basically understand all there is to know about metaprogramming.
If your doing metaprogramming, whenever you get stuck trying to work out "How come thats nil", I guarantee, if you track the value of self, you'll understand it"
- Instance variables: look up in "self"
- Methods: look up in self's class
Ruby вернулся в первую десятку рейтинга TIOBE, и аналитики считают это хорошим знаком. Язык появился очень давно, но оставался в тени до релиза Ruby on Rails в 2006 году. Фреймворк подкинул его на тридцать позиций вверх до топ-10 и обеспечил звание «Язык 2006 года».
После пика популярности в 2008 году Ruby начал сдавать позиции под натиском новых языков, но теперь постепенно взбирается обратно. По мнению экспертов, подобная динамика свидетельствует о естественном росте популярности.
Потому что Руби самый удобный язык программирования, а пока программируют люди - удобство значит многое!
Недавно столкнулся с неприятным сюрпризом. Неочень приятно видеть непрошенных гостей из Китая у себя на сервере)) Решил что русскоязычному сообществу следует знать об этой уязвимости и перевёл статью для сообщества.
Ссылка на переведённую мною статью про уязвимость CVE-2017-17405
Признаюсь, я не хотел внедрять TDD потому что было ленно писать код "который ничего не создаёт и не делает". Но философия дяди Боб-а мне очень понравилась. Как говорилось у Карлоса Кастанеды :
"Вещи не меняются, меняется лишь наш взгляд на них."
С сегодняшнего дня я начну внедрять ТDD в свои проекты. Хоть дядя Боб и говорит что внедрение тестов в уже написанный код "безумие не стоящее и гроша" я сделаю это, скажем так - для общего развития. Начну с последнего проекта "Conversation App".
Рекомендую всем посмотреть видео ниже. Если вы сомневаетесь в пользе тестов и существующие аргументы вас не убеждают, Дядя Боб поможет вам взглянуть на это по другому, да так, что вам придётся уже искать причину не следовать TDD (сразу предупрежу, лень - это не причина). Ну и попутно вы узнаете интересное про архитектуры, и особенности архитектур приложений.
Смотрим видео.