status_200

1 февраля 2016, Moscow, Russia

# Понедельник 20 твитов

Друзья, всем привет! На этой неделе с вами @status_200, руководитель Ruby-разработки в @ramblerandco

11:55

У нас заготовлено много интересного: новости, вопросы, холивары. Если у вас есть, чем поделиться, спрашивайте. Продуктивной недели!

11:58

Для начала напомню, что на прошлой неделе у нас прошел третий митап Ruby-разработчиков @railsclub_ru Спасибо @evroneru @ramblerandco

12:02

Еще о прошедшем митапе, анонс здесь: railsclub.timepad.ru/event/282194/ а запись будет позже. Спасибо всем участникам, было интересно

12:04
Defensive programming in Ruby blog.lelonek.me/defensive-prog…
12:07
@rubyunderhood спасибо за организацию! Классный офис, btw
12:19
A book for anyone with some Rails experience and little or no iOS experience. cards.twitter.com/cards/8eiqg/cz…
12:20

Если вы упустили это на прошлой неделе, обновляем Rails (важные security фиксы): weblog.rubyonrails.org/2016/1/25/Rail…

12:29

Расскажу немного об архитектуре наших Ruby-приложений, таких как lenta.ru, moslenta.ru, motor.ru, rns.online

15:10

Специфика многих наших приложений такова, что нагрузка на запись очень очень мала, а нагрузка на чтение наоборот, высокая

15:12

Поэтому было принято разделить каждый портал на два приложения: админка (CMS, внутренний инструмент) и сайт, доступный всем пользователям

15:17

В CMS редактора создают и обвертывают контент, загружают картинки. Все данные попадают в Postgres, откуда через Resque попадают в MongoDB...

15:19

Сайт читает готовые документы из слэйва Монги и отображает пользователю. На всех фронт-энд серверах крутятся 6 - 12 юникорнов + nginx...

15:22

Активно используем nginx ssi, чтобы кэшить куски вьюх. Вся статика отдается nginx'ом.

15:24

Такой вот CQRS на уровне приложений. А как вы справляетесь с нагрузкой?

15:26
@rubyunderhood да в 80% запросов все равно все упрётся в IO, все же приятней когда при прочих равных можно эту память эффективней забить.
16:03
@rubyunderhood еще видел экзотику, когда предлагали эластик использовать для подобного.
16:50

Ну и раз уж разговор зашел о скорости, вопрос: какие инструменты/сервисы вы используете для мониторинга/профайлинга?

22:20

Продолжая тему мониторинга, мы активно используем NewRelic. Как в продакшн, так и в дев (docs.newrelic.com/docs/agents/ru…) <-- полезная штука

22:48
I fucked up Git so bad it turned into Guitar Hero pic.twitter.com/vUKZJAQKWg
22:54

# Вторник 16 твитов

Кстати @PacktPub каждую неделю раздает бесплатные книжки(1 в день) На этой неделе Angular packtpub.com/packt/offers/f… на прошлой machine learnin

0:33

Друзья, всем спасибо за увлекательный день и спокойной ночи.

0:48

Доброе утро, чят! Спасибо всем за вчера. Сегодня нас ждет еще больше новостей, опросов, холиваров. Всем хорошего и продуктивного дня!

11:18

Ну и, чтобы закрыть тему мониторинга, опрос: какими инструментами для мониторинга вы пользуетесь в продакшн?

13:49

Завтра стартует самая крутая конференция в России по Postgres pgconf.ru Кто идет? Скажите, мастер-классы стоит посещать?

13:56

Не забываем забрать сегодняшнюю бесплатную e-книжку: PhoneGap and Angular JS: packtpub.com/packt/offers/f…

15:13

Обновляем rubygems до 2.5.2: включает багфиксы, новые флаги blog.rubygems.org/2016/02/01/2.5…

15:20

А откуда вы получаете новости о ruby/rails/tech/programming? Рассылки, блоги, форумы, все, что угодно...

16:51

Свои коротким списком: github, hackernews, habr, rubyweekly, toptal, twitter, arkency, ruby 5by5 podcast

16:54

А кто знает, что случилось с @rubynoname rubynoname.ru ?

22:07
@rubyunderhood ну у них кончился срок регистрации, в следующем году :) @rubynoname
22:13

Популярные ruby github-репозитории за сегодня: github.com/trending?l=ruby

22:52

Вот человек говорит, что выключать asset pipeline опасно, это нужно делать аккуратно, или вообще убрать флаг: github.com/rails/rails/is…

23:02

Немного о нас Во всех наших проектах мы сознательно отказываемся от использования asset pipeline и юзаем webpack или gulp для сборки ассетов

23:04

Как насчет еще одного опроса: используете ли вы asset pipeline?

23:27

# Среда 25 твитов

@rubyunderhood тут скорее речь о введении в заблуждение тем, что отключаем спрокетс, а по факту херится весь пайплайн
0:13

я пойду спать, а вы почитайте, что нового в rails 5.0.0.beta2 weblog.rubyonrails.org/2016/2/2/Rails… (TLDR меньше зависимостей для ActionCable)

0:27
@rubyunderhood Правильно было написать “да :(”.
10:50

Бодрое утро, чят! Для тех, кто пропустил, эту неделю с вами @status_200, руководитель Ruby-разработки в @ramblerandco. Как настроение?

11:07

We need more CSRF tokens! blog.bigbinary.com/2016/01/11/per…

11:15

Давайте-ка затронем сегодня актуальную тему: тесты, и все, что с ними связано: TDD, покрытие, unit/functional/acceptance, mocks, stubs, CI..

11:31

Немного о нас: тесты пишем, стараемся не принимать MR без тестов, если тесты на CI не проходят, изменения не принимаются...

11:33

Пишем на Rspec (unit, functional) + Capybara + Poltergeist (acceptance). Веб запросы мокаем с помощью VCR. Пользуем FactoryGirl и Faker...

11:35

Отдельные разработчики работают по TDD, но это скорее исключение (наверное к сожалению)...

11:37
@rubyunderhood отличный повод воспитать культуру тдд в компании :)
12:24
@rubyunderhood прямо с ходу не назову проблемы, но я знаю, что они случаются часто. Я вместо FactoryGirl использую fabricationgem.org
12:24

Если вы не слышали, у нас есть свой уютный бложик на Хабре: habrahabr.ru/company/Ramble… подписывайтесь, будет интересно!

12:48

Традиционная напоминалка забрать бесплатную книжечку по Angular: packtpub.com/packt/offers/f…

13:56

А есть ли среди аудитории ярые противники Rspec?

14:15
@rubyunderhood А чего ему противится то, инструмент как инструмент, кому нравится тот пользует остальные ищют то что нравится. :)
14:55

У меня получился mail.ru ixbt.com/blogs/mpanius/…

15:35
@rubyunderhood делюсь rancher.com - докер кластер, искал как управлять своими сервисами - и это пока лучшее
18:00

Вопрос: используете ли вы в своей работе rubocop?Мы поняли, что большой команде необходим единый стайлгайд...

21:31

и теперь rubocop прогоняется вместе с тестами на CI...

21:34

Вот и конфиг: gist.github.com/semmin/b5c84f2… правил не много, и они достаточно базовые, но выбирались голосованием, и с болью.

21:34
@rubyunderhood rubocop + haml-lint + scss-lint + coffeelint
21:35

скидывайте свои конфиги рубокопа, посмотрим, сравним

21:35
Полмесяца назад начал использовать rubocop. Странно, что 3 года жил без него. gist.github.com/gambala/0ce124… - мой rubocop.yml, @rubyunderhood
21:47

Завершая тестовую тему: ваш любимый тестовый фреймворк для Ruby?

22:19

Чят, спасибо за интересный день, подведем итоги всех опросов в конце недели. Спокойной ночи!

23:18

# Четверг 17 твитов

@rubyunderhood с запуском в pre-commit хуке так что даже закоммитить нельзя пока рубокоп ругается
10:47

Доброе утро, друзья! Привет всем, кто находится на #pgconfru, ждем ваших твитов!

11:10

Приехали обещанные видео с последнего @railsclub_ru митапа...

11:12

Илья Конюхов, Станислав Герман, Rambler&Co. JRuby – первые шаги в JVM окружении: youtu.be/gA_hjnnWaR4 @railsclub_ru

11:12

Николай Рекубратский, Virool. Ruby в видео-рекламе: youtu.be/2HbUhMxtDYI @railsclub_ru

11:13

Алексей Никитин, Bookmate. Странный руби: youtu.be/I4JxIaGOgBo @railsclub_ru

11:14

Борис Кузнецов, Evrone. Сборщик мусора под микроскопом: youtu.be/feRtDZtty-M @railsclub_ru

11:15

Друзья, у кого есть опыт развертывания продакшн-инфраструктуры с Docker? Интересует все: LB, ServiceDiscovery, PG replication (file system)

13:03

Private Docker Registry, Swarm, Consul, Consul template, log collection

13:04

тут @Resumeo поделился rancher.com Интересная штука, нужно попробовать, вместо того, чтобы собирать грабли самим

13:06
@Troush69 @rubyunderhood в рекламных проспектах указывают что кластеризация из коробки, меньше расходы на саму систему, централизация
16:50

И еще одна бесплатная книжка по Angular от @PacktPub: packtpub.com/packt/offers/f…

17:01

3 марта, в уютном офисе @ramblerandco, состоится второй митап функциональных программистов в Москве: railsclub.timepad.ru/event/290093/ ...

17:08

railsclub.timepad.ru/event/290093/ успейте зарегестрировать ваш доклад cc @evroneru

17:09
@rubyunderhood использую всегда, даже когда команда из одного рубиста
17:52
@rubyunderhood у нас в dispply.com docker в продакшене на app серверах
19:06

Если не спится: blog.codeship.com/the-json-api-s… ведь json:api это важно. Всем мира.

23:36

# Пятница 22 твита

@rubyunderhood хе, забавно читать то, чем занимался пол ночи 😁. С этой статьей я лёг бы спать раньше!
9:22
@rubyunderhood в одном проекте использовал вот этот гем github.com/cerebris/jsona… основной минус: сильно раздувает кол-во контроллеров.
9:22
-> выкидываем всё нафиг с мыслями “завтра напишу лучше” 😭
9:41

Всем привет! Сегодня прямое включение с #pgconfru! Всем хорошего дня!

10:22

Слушаю Peter van Hardenberg из @heroku pic.twitter.com/0ZToFtwOA9

10:24

"Postgres is better at Mongo than Mongo" - @pvh @heroku

10:37

"We do more dev than ops. Each week one of us has the pager and does ops" - @pvh @heroku #pgconfru

10:38

"Everything that Postgres is bad at, Redis is good at" @pvh @heroku #pgconfru

10:40
Interested in attending your first RailsConf? Info about & applications for our Opportunity Scholarships open now! railsconf.com/scholarships#s…
11:24

Раз уж я на #pgconfru, поговорим о базах данных. Какую РСУБД вы используете в продакшн?

11:28

Разыгрывают билеты на летнюю PGconf в Питере. Нужно решить задачку (см фото) pic.twitter.com/GZAxgKTpCA

11:40
if you want to know little bit more about functors, applicatives and monads I really advise to read this blog post

adit.io/posts/2013-04-…

13:02

Пришел новый Ruby Weekly. Интересный инструмент от @GitHubEng githubengineering.com/scientist , на случай если не подписаны

13:11

Команда @ramblerandco слушает доклады в камерной атмосфере. Не хватает коктейлей pic.twitter.com/zmJCoWw4Ja

13:32
New feature in #Rails 5: Render #views outside of actions - via @brainopia evilmartians.com/chronicles/new… pic.twitter.com/EiAVUqji1G

twitter.com/zoraslapen/sta… render outside of an action?

14:59
My slides from pgconf - pg, js & Health IT - niquola.github.io/pgconf-2016-sl…
15:19

#pgconf единственная IT конференция без Wi-Fi

15:40
Happy 4th birthday, @sidekiq! What's new? mikeperham.com/2016/02/05/hap…
18:51
My advice? Add the `good_migrations` gem to your Rails project's Gemfile today. Don't ask questions. Just do it. 💚 blog.testdouble.com/posts/2016-02-…
19:21

# Суббота 9 твитов

Привет, чят! Надеюсь ваша суббота проходит хорошо. На этой неделе не обсудили ещё одну тему: найм и собеседования разработчиков

15:45

Начну с себя: за последний год я провёл много собеседований, нанял порядка 10-ти Ruby-разработчиков в команду Рамблера...

15:49

Обычно в процессе собеседования мы смотрим на знание Ruby, знание Rails подразумевается...

15:53

Проверяем: объектную модель Руби, map/reduce, lambda/proc, regexp, meta programming, SQL joins

15:56

Ещё даём задачку на CodeReview. Иногда, тестовое задание домашнее задание...

15:58

ДЗ помогает оценить знание инструментов, навыки ООП, тестирования, подход кандидата к решению комплексных задач...

16:02

А что вы ожидаете от собеседования,какие вопросы любите? Может есть какие-нибудь нелепые случаи, которыми хотелось бы поделиться?

16:06

Ещё, сознательно не даём задачек на логику (а-ля про лампочки и пр.), потому что считаем, что они мало что говорят про кандидата

16:09
@rubyunderhood нелепо, это когда самые занюханные веб студии в какой нибудь провинции, на собеседование спрашивают почему люки круглые
16:29

# Воскресенье 10 твитов

Занимательно: Migrating a Rails app to Elixir/Phoenix medium.com/@stueccles/wha…

15:33

Друзья, моя неделя в rubyunderhood подходит к концу. Хотелось бы подвести итоги опросов, которые я проводил в течение этой недели...

15:57

Подавляющее большинство нашей аудитории (81%) использует Postgres, MySQL на втором месте с большим отрывом (15%).

15:59

82% процента аудитории использует NewRelic для мониторинга в продакшене, 10% использует rack-mini-profiler

16:01

61% использует рельсовый Asset Pipeline, при этом 15% не уверенны, пользуются ли они AP или нет

16:03

Любимый тестовый фреймворк сообщества -- RSpec (89%), при этом TestUnit не использует никто

16:04

Что хотелось бы сказать в завершение этой прекрасной недели...

16:12

Если вас заинтересовало то, что мы делаем в @ramblerandco, связывайтесь со мной (@status_200), приходите на митапы, пообщаемся...

16:13

Нам всегда нужны хорошие люди список вакансий можно найти тут: rambler-co.ru/jobs Даже если вы не в поиске, просто приходите поговорить

16:17

Спасибо всем за интересную неделю. У @rubyunderhood очень крутая аудитория!

16:19

other