
Sign up to save your podcasts
Or


На RailsClub 2015 мы традиционно взяли интервью у спикеров конференции.
Мы выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Мы выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Мы выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Мы выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Спонсор выпуска — Vexor CI – облачный continuous integration сервис для ruby разработчиков с поминутной оплатой.
С учетом поминутной оплаты, Vexor очень выгоден для маленьких проектов и эффективен для больших. Каждому новому пользователю предоставляется $10 на счет для экспериментов.
Попробовать Vexor CI
Релизы
Новости
Мы выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Спонсор выпуска — Vexor CI – облачный continuous integration сервис для ruby разработчиков с поминутной оплатой.
С учетом поминутной оплаты, Vexor очень выгоден для маленьких проектов и эффективен для больших. Каждому новому пользователю предоставляется $10 на счет для экспериментов.
Попробовать Vexor CI
Коллекция рецептов для быстрого руби от Эрика.
Кир
Первый раз в Москве?
Эрик
Ага, да.
Кир
И как тебе Москва, что думаешь о городе?
Эрик
Очень красивый город. Первый раз тут, и мне все очень нравится. Погода хорошая;
Кир
Круто.
Эрик
Ага.
Кир
Так вот. Ты работаешь в SoundCloud, в Берлине?
Эрик
Да!
Кир
Можешь рассказать об архитектуре SoundCloud?
Эрик
Так, в SoundCloud мы используем архитектуру микросервисов. Я работаю в
В общем, мы используем Ruby, Rails, еще довольно много используем Scala,
Кир
Интересно. То есть, как я понимаю, вы мигрировали с монолитного Rails приложения, да?
Эрик
Да! Думаю, многие компании, когда они развиваются и начинают масштабироваться,
Кир
Ясно. Давай поговорим про open source, над которым ты работал —
Эрик
Ох, их много — сложно выбрать. Не знаю, некоторые обертки над API, над которыми
И, знаешь, наверное самый популярный мой gem — это rails_admin, там код и близко
Кир
Понятно. А что вообще помогает тебе работать над новыми open source проектами?
Эрик
Ну, думаю, как и у всех — главная причина, наверное, в том, что когда я
Кир
Точняк. Ты упомянул, что в SoundCloud используется много разных языков, так вот,
Эрик
Да, у нас есть.
Кир
Scala, Clojure?
Эрик
Да-да. Посмотри на https://github.com/soundcloud, думаю, у нас там больше сотни
Так что мы сделали такой вот инструмент. Другие компании, у которых тоже было
Кир
На каком это языке?
Эрик
На Ruby. Так что да, это в основном для миграций с Rails.
Но у нас.. Если посмотреть на https://github.com/soundcloud, у нас есть
Кир
Какое будущее у Ruby, по твоему мнению?
Эрик
Хм. Хороший вопрос. Надеюсь, что будущее будет таким же, как и прошлое — за
Кир
Да, я заметил тренд с переписыванием инструментов командной строки на Go.
Эрик
Да, точно.
Кир
Вот Heroku так делает.
Эрик
Да, это хороший пример. Их CLI для выполнения разных команд, раньше был на Ruby,
Кир
Давай поговорим о Берлине.
Эрик
Ага.
Кир
Что ты думаешь о стартап-культуре, об атмосфере?
Эрик
Очень хорошая. Я переехал в Берлин из Сан-Франциско, где я до этого прожил 8
У меня был такой скепсис, когда я переезжал из Сан-Франциско, но.. Мои коллеги —
И вот что еще круто в Берлине: классное сообщество для тех, кто хочет учиться.
Кир
Все, спасибо большое!
Эрик
Да, конечно. Спасибо за вопросы!
Ярослав
Привет, Божидар! Как тебе Москва?
Божидар
Все здорово. Фантастический город, счастлив, что я здесь и что меня пригласили.
Ярослав
Первый вопрос будет про Rubocop. Многие из наших ребят знают о gem parser
Божидар
Да, конечно. Когда я начал работать над Rubocop, я использовал Ripper,
После того, как вышла первая версия Rubycop с использованием parser,
Ярослав
Мы говорим о Ripper, но ведь еще есть gem.. как его..
Божидар
ruby_parser?
Ярослав
Да, ruby_parser.
Божидар
Да, проблема с ruby_parser была в том, что его не мейнтейнили особенно. Думаю,
И еще дело было в том, что ruby_parser не был так производителен, как parser,
Ярослав
Ага. Следующий вопрос про твою самую известную работу — Ruby Guide. Можешь
Божидар
Ну, обычно я делаю что-то, что называю проверкой толпой (Crowd
Но, в конце концов, кто-то должен проталкивать
Ярослав
Ясно. А ты начал с своего собственного набора правил, или ты использовал
Божидар
Я начал с правил, которые я собрал из моих любимых книг по Ruby. В основном..
Ярослав
Pickaxe?
Божидар
Не-не. Это “Programming Ruby”.
Ярослав
А, другая.
Божидар
Да. Так вот, я начал с советов из «Библии», то есть, единственной книжки,
Так что начинал я оттуда, а после первого публичного релиза
Ярослав
Я спрашивал, потому что еще до того, как я увидел твой гайд, был гайд от Кристиана,
Божидар
Да, видел.
Ярослав
Я его использовал неоднократно для обучения внутри команды, и только потом увидел
Божидар
Да, я проводил поиски по гайдам. Я видел этот, видел веб-страницу, не помню
Ярослав
Еще что хочу спросить о твоих гайдах. В каком-то смысле использование гайда по
Так как ты думаешь, как лучше всего применять твой гайд, или, может быть, как ты
Божидар
Ну, обычно на моих проектах, Ruby Style Guide в его чистой форме дается как
Есть точка, после которой попытки упростить что-то просто вредны: больше это
Ярослав
Еще вопрос. Посмотрел на твой профиль на GitHub, и оказывается, что ты
Божидар
Да-а-а.
Ярослав
И у тебя даже гайд по стилю для Clojure есть. Не знал раньше. Так вот,
Так вот, почему именно Clojure?
Божидар
Ну.. По той же причине, по которой я изначально выбрал Ruby. Я был очарован
Но сейчас есть Clojure, настоящий Lisp, со всей мощью, без ограничений Ruby.
Ярослав
Да, но есть много людей, которые называют его академическим языком — в противовес
Божидар
Ну да, но нельзя отрицать и то, что количество open source проектов, использующих
Так что думаю, что с тем, как мультиядерность становятся нормой, языки,
Ярослав
С которого и начался Elixir, ага.
Божидар
Да. Я почти уверен, что ему Ruby уже не интересен — да, его компания известна
Был еще известный рубист, Фил Хагельберг (@technomancy — прим. пер.), сейчас
Ярослав
Да, но он всегда был поклонником Emacs, и поклонником Lisp. Он был главным
Все люди, которые начинали с Lisp в университете или школе, которые хакали
Божидар
Да, но думаю, что Ruby-программистов привлекает мощь всех этих новых
Думаю, что мир ПО изменяется очень быстро, и сообщество Ruby и Rails должно
Ярослав
Депрессивно, но справедливо.
Еще вопрос, чтобы не очень долго тебя задерживать. Очевидно, написание правильного
Божидар
Да, я об этом говорил на докладе. Я запланировал написать книгу, но потом я
Ярослав
Ну что же, удачи в написании книги. Спасибо, что зашел!
Божидар
Вам спасибо.
Мы выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Ярослав
Так, ладно, поехали. Аарон Паттерсон с нами, привет Аарон!
Аарон
Привет!
Ярослав
Так, ладно, с чего бы начать. Ты первый раз в Москве? Как тебе?
Аарон
Да, я первый раз в Москве, и, кстати, первый раз в России. Все потрясающе, здорово.
Ярослав
Хорошо — это прямо как в Сиэтле?
Аарон
Ну, еда — еда совсем другая, город намного больше. Кстати, по погоде сейчас очень похоже.
Ярослав
Ага.
Аарон
К счастью, в Сиэтле так холодно не бывает. Не думаю, что здешнюю зиму я бы пережил.
Ярослав
Как у тебя впечатления о нашей руби тусовке? Это локальная группа (LUG — прим. пер.),
Аарон
Не, намного больше. Намного больше, чем обычная локальная группа. Больше, чем
Ярослав
Ага, ладно. Для начала — можешь рассказать о своей новой работе?
Аарон
Да-да-да. Я перешел на работу в RedHat.. недели две назад, кажется. Нет, три.
Ярослав
Оно на ванильных Rails, или как?
Аарон
Это Rails приложение. Прямо сейчас у нас есть ветка с нашими собственными патчами,
Ярослав
А какая часть твоей работы — именно опенсорс? Я могу ошибаться, но, насколько я знаю,
Аарон
Вообще, продукт — все равно опенсорс, так что формально я в любом случае занимаюсь
Ярослав
А значит ли это.. Ну, помимо того, что продукт будет работать на последних рельсах,
Аарон
Да, конечно. У нас есть фичи — в нашей ветке, есть разные фичи, которых нет в Rails,
Ярослав
Вопрос, который меня очень интересует — работаешь ли ты плотно с ребятами из
Аарон
Точно, точно.
Ярослав
Поэтому многие думают, что главный способ сделать Ruby быстрее и Rails быстрее —
Аарон
Я работаю с ними немного и не напрямую. Проще говоря, я разговариваю с командой
Ярослав
Ага. Еще вопрос: мы начали с вопроса про Ruby комьюнити и все такое, хочу немного
Аарон
Да.
Ярослав
Так вот как у вас.. Ну, в чем секретный рецепт, как у вас получилось все это организовать,
Аарон
Думаю.. Ну, честно, это все Райан Дэвис. В этом только его заслуга. Вот, что он говорит —
Ярослав
Ага. У меня есть немного спорный вопрос, он больше к докладу относится, но его пока
Аарон
(смеется)
Ярослав
Думая о названии твоего доклада, не мог перестать вспоминать тот твит.
Аарон
Ну, я думаю.. Это было умное решение. Думаю, что у Rack не очень хорошее API, но
Ярослав
Думаешь ли ты, что так называемый успех Node.js (не будем отвлекаться на порку Node.js) —
Аарон
Ну, весь бум, большой бум с Node.js — это возможность делать стриминг и все такое, и
Ярослав
Ты сказал, что главная фича Rack, использования Rack — это то, что можно использовать
Кир
..?!
Ярослав
Так, щас (гуглит). Lotus, он называется Lotus. Видел?
Аарон
Неа.
Ярослав
Ладно, скину ссылку, это хорошая вещь. Там идея в том, что лучше бы вам, ребята,
Аарон
Ага.
Ярослав
Так вот, пока Rails переходит на новое API, есть ли шанс, что разовьются фреймворки,
Аарон
Угу.
Ярослав
.. куча вариантов с ORM, как Sequel, например, так вот, будет ли большая конкуренция?
Аарон
Ээ, думаю, будет большая конкуренция, но конкуренция и так есть, и будет еще больше.
Ярослав
Еще одна штука про Rails — ну, тролинг, но все-таки — куча людей говорят, что Rails,
Аарон
Ммм. Мне сложно сказать, я веб-чувак. Мне нравится Ruby на вебе использовать,
Ярослав
Точняк. Так..
Аарон
(продолжает синячить портвейн) Хорошая штука!
Ярослав
Серьезно?
Аарон
Да, мне нравится. Порто А-ле-гро?
Ярослав
Порто Аллегре, да.
Аарон
Порто Аллегре Руби. Хорошая штука!
Кир
Когда я был в Португалии, взял с собой семь литров. Семь бутылок.
Аарон
(довольно зевает)
Ярослав
Долейте чуваку.
Аарон
Извините, что прерываем подкаст такими разговорами.
Ярослав
Да, это была хорошая идея. Ребята думали, что я шутил, когда спрашивал, брать
Аарон
(смеется)
Ярослав
Ладно, еще вопрос. Есть такая штука с русскими митапами по Ruby — по крайней
Аарон
Угу.
Ярослав
То есть, Erlang, Clojure, Scala; Elixir — это горячая тема.
Аарон
Rust! (смеется). Go, Rust, ну да.
Ярослав
Функция была представлена неделю назад и безнадежно устарела — вот тебе Rust.
Аарон
(смеется) Да, точняк.
Ярослав
Так тебе нравятся какие-то языки кроме Ruby, что ты используешь? Какие именно?
Аарон
Да-да. Что мне нравится в Ruby сообществе — так это то, что мы не замыкаемся
Ярослав
Ну, с Ruby началась революция «у нас есть задача, надо подобрать под нее язык».
Аарон
Да. Ну вот, я в последнее время учил Rust. Пытаюсь учить Elixir. Но вообще я
Ярослав
То есть, раз нравится Scheme, нравится и Clojure, наверное?
Аарон
Да, ну, Clojure клевый. Мне очень нравится Clojure. Главная причина, по которой
Ярослав
Тебе нравятся языки на JVM, например, или просто все подряд?
Аарон
Все подряд, мне плевать, на чем оно работает. C, JVM, Erlang, мне все равно.
Ярослав
Еще вопрос. У меня есть, вроде как, любимый вопрос для опенсорс знаменитостей.
Аарон
Угу.
Ярослав
В общем, люди часто тебе говорят, что код у тебя отстой, и подход твой отстой, и
Аарон
Да-а-а.
Ярослав
И вот они тебе объясняют, что ты обязан что-то сделать, и они расчитывают, что ты
Аарон
Ой, да.
Ярослав
В общем, сначала все обсуждают проблемы с безопасностью и говорят — эти чуваки
Аарон
Да!
Ярослав
А потом ты фиксишь и пушаешь релиз, и все такие — теперь мне еще и все приложения
Аарон
(смеется)
Ярослав
В общем, ты долгое время этим занимался, так что как ты с этим справляешься?
Аарон
Ну, тут такое дело. Надо понимать, что на каждого человека, который жалуется и
Ярослав
Да, но они молчат же.
Аарон
Да, ты просто от них ничего не слышишь. Но надо.. Лично я это просто держу в
Ярослав
Знаешь, я вспоминаю твой твиттер, когда обсуждались проблемы с безопасностью,
Аарон
Да, да. Нельзя, чтобы такие вещи тебя задевали, просто нельзя. Я знаю, что это все
Ярослав
Так, еще одна спорная вещь, которую хочется обсудить. Было несколько людей из
Аарон
Ох, да.
Ярослав
Ну и многие люди, с кем я говорил — кто-то из Rails Core, кто-то, кто хотел бы
Аарон
Ну, я расскажу тебе секрет, но тебе придется дать слово, что никому не расскажешь.
Ярослав
Кроме слушателей.
Аарон
Кроме твоих слушателей. Слушатели, пожалуйста не рассказывайте никому. А секрет
Ярослав
…
Аарон
Коммичу и все.
Ярослав
Такой твой секрет?
Аарон
Да! Надо попасть в команду Rails Core, и делай все что хочешь.
Да, ну а если честно, я иногда так делаю — добавляю какую-то определенную
Ярослав
То есть, ты говоришь, что Дэвид все еще всем рулит?
Аарон
О да, однозначно, да.
Ярослав
Все еще Basecamp Rails?
Аарон
Однозначно. Basecamp Rails! (смеется)
Ярослав
У вас там еще есть секретный Campfire, где вы все обсуждаете?
Аарон
Ну, у нас есть комната в Campfire, она особенно и не секретная. Любой может
Не думаю, что будет RedHat Rails.
Ярослав
Да, но много было разговоров о том, чтобы делать форки. Некоторые ребята из
Аарон
Угу.
Ну, это правда, но большинство людей.. Сложно получить какую-то поддержку
Ярослав
Вроде сотни гитхаберов.
Аарон
Да, вроде сотен гитхаберов. Точно. Нужно много людей на борту. Но вот форк GitHub —
Ярослав
Да, но все еще много чего нет. Например, у нас до сих пор нет нормальной.. По
Аарон
Да-а-а.
Ярослав
Потому что в Basecamp не хотели бы покупать больше одной БД.
Аарон
Да, все правда.
Ярослав
Поэтому приходится работать со страшными хаками, которые ломаются из релиза в релиз.
Аарон
Ну, хорошая новость в том, что в приложении, над которым я работаю в RedHat, есть
Ярослав
Так, вопросы, наверное, кончились, давай последний. Много ребят приходят в Rails Core,
Аарон
Не знаю. Причина, по которой я работаю над Rails.. Ну, я программист. И я
Когда я работаю над Rails, я делаю продукт, который помогает
Так что я продолжаю делать то, что делаю.. Хочу, чтобы у других разработчиков,
Ярослав
А у тебя не бывает таких мыслей по ночам, вроде, блин, я веб-разработчик,
Аарон
Да.. (смеется)
Ярослав
Не занимаюсь супер-нагруженными штуками, и все что я делаю — HTML и CSS,
Аарон
Нуу. Иногда я думаю о таких вещах, но, все-таки, я занимаюсь тем, что лучше
Ярослав
В общем, ты счастлив?
Аарон
Да, точно.
Ярослав
Спасибо, с нами был Аарон!
Аарон
Тебе спасибо.
Кир
Пишем! Так вот, это твой первый визит в Москву?
Йонас
Да, все так.
Кир
Как тебе в Москве, что думаешь о городе?
Йонас
Да все хорошо. Организаторы конференции очень хорошо о нас заботятся.
Кир
Три дня, да?
Йонас
Три дня.
Кир
Начнем больше про программирование. Планируешь новую большую версию Carrierwave?
Йонас
Я вообще не особенно участвую в проекте в последнее время. Я взял самоотвод
Кир
Да, его зовут Кирилл.
Йонас
Кирилл, да.
Кир
Изменил ли ты что-то в Carrierwave, если бы у тебя была возможность сделать какие-то
Йонас
Ну да, если сейчас вспоминать о том, что было, точно есть какие-то вещи.. Он был
Кир
Согласен.
Йонас
Так что.. Библиотека изначально, что довольно смешно, была плагином для Merb,
Она все еще решает многие проблемы хорошо, но можно было бы решать и проблемы
Кир
У нас сейчас есть клиент с довольно большим Rails приложением..
Йонас
Угу.
Кир
Там, например, несколько сотен тысяч загрузок каждый день
В общем, для следующего проекта я начал писать свою библиотеку — небольшую
А вообще, большое тебе спасибо за Carrierwave.
Так вот, теперь к Capybara. Будет что-нибудь новенькое с Capybara?
Йонас
Хех. Надеюсь. Я, в общем, и в этом проекте не так много делаю теперь. Но,
Кир
Расскажи, какие развивающиеся языки тебе интересны?
Йонас
Мне дико интересен Rust. Думаю, это потрясающий язык. И из-за него меняется
Кир
Знаешь кого-нибудь, кто использует Rust в бою?
Йонас
Да! Ребята из Tilde — это где работает Йехуда Кац.
Кир
Это приложение для знакомств?
Йонас
Нет, это Tinder. Tilde делают продукт под названием Skylight..
Кир
А, да, да.
Йонас
Сервис для мониторинга Rails. И у них часть клиента, клиентской штуки на
Кир
И спасибо тебе большое за pundit!
Йонас
Ой, да.
Кир
Я пушаю ребят в нашей команде, чтобы мы больше использовали pundit у себя,
Потому что можно писать эти миниатюрные классы с настройками доступа..
Йонас
Да, здорово, спасибо большое. Действительно, веселый проект. Оказывается,
Кир
Так ты сейчас сфокусирован на pundit?
Йонас
Ну, он не то чтобы много энергии у меня отнимает, слишком маленький проект.
Кир
Спасибо за интервью!
Йонас
Без проблем.
Мы также выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Промокод для скидки на RailsClub: rubynoname
Осенью 2014 года Злые марсиане проведут два курса в Москве — Брейнвошинг по Ruby on Rails (11-14 октября) и Брейнвошинг по фронтенду (18-21 октября).
Чтобы получить ссылку при оформлении билета, укажите в поле комментариев код «RUBYNONAME» — это даст вам (или оформляющему билет вашему работодателю) скидку 2000 руб. Еще можно с помощью специальной ссылки на странице каждого из курсов задать вопрос преподавателям — если вопрос будет интересный, мы с удовольствием опубликуем ответ, а вы получите скидку 5000 руб.
Брейнвошинги очень полезные, но относительно дорогие, и возможность посетить их есть не у всех. Для поощрения open-source активистов мы вместе с Ruby NoName Podcast уже во второй раз проводим конкурс, приз которого — бесплатное посещение одного из брейнвошингов за вклад в open source.
Условия
Участники конкурса присылают свои open source работы за сентябрь (и оставшуюся до подведения итогов конкурса часть октября) нам в редакцию. Нужно прислать ссылки на свои коммиты или pull requestы, желательно с описанием или со ссылкой на статью в блоге с описанием — нам в комментарий к Gist и по почте [email protected]. В письме не забудьте указать, как быстрее всего с вами связаться (почта и телефон, например).
Мы рассматриваем работы на Ruby (улучшения/патчи/PR в Rails, популярные гемы, или ваши собственные новые проекты) и работы по фронтенд-части (тут спектр уже — нас интересуют только улучшения PostCSS, а еще лучше — собственные разработки на базе PostCSS; про него слушайте в подкасте).
Единственный победитель будет выбран ведущими подкаста и брейнвошингов. Крайний срок подачи работ — 6 октября 2014 года (чтобы вы за неделю до первого брейнвошинга еще успели спланировать время и попасть на курс). Победитель может выбрать один из брейнвошингов для бесплатного посещения.
Проекты
Прочее
Мы также выражаем огромную благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
Промокод для скидки на RailsClub: rubynoname
Промокод для скидки на RailsClub: rubynoname
А также выражаем благодарность Стасу Спиридонову за помощь с мастерингом этого выпуска.
From the publisher's feed