От переводчика: «Elixir и Phoenix — прекрасный пример того, куда движется современная веб-разработка. Уже сейчас эти инструменты предоставляют качественный доступ к технологиям реального времени для веб-приложений. Сайты с повышенной интерактивностью, многопользовательские браузерные игры, микросервисы — те направления, в которых данные технологии сослужат хорошую службу. Далее представлен перевод серии из 11 статей, подробно описывающих аспекты разработки на фреймворке Феникс казалось бы такой тривиальной вещи, как блоговый движок. Но не спешите кукситься, будет действительно интересно, особенно если статьи побудят вас обратить внимание на Эликсир либо стать его последователями».
Читать полностью »
Рубрика «ruby» - 14
Создание движка для блога с помощью Phoenix и Elixir – Часть 1
2016-10-11 в 5:11, admin, рубрики: Elixir, Erlang/OTP, phoenix, phoenix framework, ruby, ruby on rails, Разработка веб-сайтов, функциональное программированиеЗачем вскрывать черный ящик JVM — Интервью с Charles Nutter, JVM-разработчиком из Red Hat
2016-10-06 в 14:55, admin, рубрики: java, joker, joker2016, jokerconf, ruby, Блог компании JUG.ru Group, Программирование, разработка Осень – отличное время для встречи со старыми друзьями, поездок на конференции, прогулок по паркам. Многие уже вернулись из отпусков с новыми впечатлениями, идеями, готовые делиться ими, общаться с окружающими. Наше сегодняшнее интервью не о путешествии, хотя, несомненно, погружение в мир Java тоже можно назвать таковым. Разговор пойдет о JVM. Наш собеседник – Charles Nutter, разработчик JVM в Red Hat, ведущий инженер проекта JRuby.
Итак, запасаемся кофе и начинаем.
— Наше тема сегодня – это JVM и ее «тёмное» содержимое. Charles, скажите, когда для вас JVM перестала быть загадкой?
Читать полностью »
Пишем Ruby gem для Yandex Direct API
2016-10-01 в 22:57, admin, рубрики: ruby, ruby on rails, Yandex API, yandex directОчень хотелось изучить Ruby получше, а рабочего проекта не было. И я попробовал написать gem для работы с Yandex Direct API.
Причин было несколько. Среди них: Yandex Direct API очень типичен для Яндекса и современных REST-сервисов вообще. Если разобраться и преодолеть типичные ошибки, то можно легко и быстро написать аналоги для прочих API Яндекса (и не только). И ещё: у всех аналогов, которые мне удалось найти, были проблемы с поддержкой версий Директа: одни были заточены под 4, другие под новую 5, и поддержке units я нигде не нашёл.
Метапрограммирование — великая вещь
Основная идея gem-а — раз в языке вроде Ruby или Python можно создавать новые методы и JSON-подобные объекты на лету, то методы интерфейс для доступа к REST-сервису могут повторять функции самого Rest-сервиса. Чтобы можно было писать так:
request = {
"SelectionCriteria" => {
"Types" => ["TEXT_CAMPAIGN"]
},
"FieldNames" => ["Id", "Name"],
"TextCampaignFieldNames" => ["BiddingStrategy"]
}
options = { token: Token }
@direct = Ya::API::Direct::Client.new(options)
json = direct.campaigns.get(request)
А вместо того, чтобы писать справку, отсылать пользователей к мануалам по указанному API.
RailsClub 2016: Интервью c Владимиром Дементьевым
2016-09-30 в 10:09, admin, рубрики: action cable, railsclub, ruby, ruby on rails, Блог компании «RailsClub», конференции, подкастыВсем привет! Мы вовсю готовимся к RailsClub 2016. На сайте уже выложены тезисы большей части докладов — советуем посмотреть! Уже зарегистрировалось почти 400 участников, присоединяйтесь, до 22 октября осталось не так много времени!
Продолжаем выкладывать интервью с нашими докладчиками в подкасте RubyNoName. Сегодняшний разговор с Владимиром Дементьевым, разработчиком в Evil Martians.
Аудио можно послушать на сайте подкаста, а здесь делимся расшифровкой.
Читать полностью »
Руби(н) vs Питон: самые важные вопросы и ответы
2016-09-26 в 12:34, admin, рубрики: php, python, rails, ruby, Питон, Программирование, руби, рубин, юмор«Питон или Руби» — это один из самых горячо обсуждаемых топиков в мире программирования. Впереди него только “emacs или vim” и “pro-skub или anti-skub” по важности и сложности. Сегодня мы изучим разницу и ответим на вопросы, а также объективно и окончательно решим, что лучше.
Что такое Питон?
Питон это крупная змея, которая обитает в юго-восточных регионах планеты. Они не ядовитые и нейтрализуют врагов в основном удушением. Многие из сохранившихся видов находятся под угрозой исчезновения.
Что такое Руби(н)?
Руби (рубин) — это яркий, красный драгоценный камень. Его принято относить к группе четырех драгоценных камней, наряду с изумрудами, бриллиантами и сапфирами. Существует большой спор: рубины — это красные сапфиры или сапфиры — это голубые рубины.
В чем схожесть?
Для незнакомого с темой человека рубин и питон могут показаться идентичными:
- Динамическая типизация: Тип, к которому относится слово, динамически определяется из контекста. Питон может относится к семейству (питонов), роду (broghammerus) или к виду (сетчатый питон). Аналогично, рубин может быть конкретным минералом (корунд с примесями хрома), или относиться к общей категории красных камней.
- Интерпретируемый: Питоны и рубины часто используются как символы и метафоры, особенно в поэзии и мифологии.
- Объектно-ориентированные: Они оба — объекты, но некоторым людям некомфортно относиться к животным как к объектам.
- Высокоуровневые: Я изучал в университете физику, и все, что больше атома водорода считаю «высокоуровневым». Я не шучу. Мы еще не нашли решение уравнению Шредингера для атома гелия, а это все лишь атом водорода с дополнительной болтающейся хреновиной.Читать полностью »
Как работать с MS Access в Linux
2016-09-08 в 8:13, admin, рубрики: fdw, gdal/ogr, mdb, Microsoft Access, ms access, odbc, postgresql, ruby, ruby on rails, древнее зло, Разработка под Linux, тяжёлое наследиеМногие пользуются Аксесом… даже в продакшене… даже по сей день. Посему, случаются моменты, когда кому-то захочется подключиться к этой БД из какого-нибудь неожиданного места. Например с юниксового сервера. Конечно же, подключиться захочется не просто так, а для использования данных из Аксеса в веб-приложении. И, без всякого сомнения, появится желание использовать эти данные совместно с информацией из других, более современных БД.
Итак, я хочу описать несколько подходов к общению с существом, называемым MS Access. Посему, исходная задача такова: установить соединение с MS Access из Ruby on Rails приложения или из PostgreSQL (используя FDW) и получить доступ к данным, желательно, в реальном времени.
Ниже я постараюсь собрать всю информацию, относящуюся к вышеописанно задаче и попытаюсь описать нетривиальные случа и подводные табуретки. Надеюсь, это описание сэкономит время кому-нибудь… либо просто, в некоторой степени, позабавит уважаемую публику.
Читать полностью »
DIY DI в Ruby
2016-08-22 в 5:35, admin, рубрики: dependency injection, inversion of control, ruby, Программирование, Проектирование и рефакторинг, Совершенный код, Тестирование веб-сервисовНа Хабре уже была статья, посвящённая Dependency Injection в Ruby, но упор в ней был больше на использование паттерна IoC-container с помощью гемов dry-container и dry-auto_inject. А ведь для использования преимуществ внедрения зависимостей совершенно необязательно городить контейнеры или подключать библиотеки. Сегодня расскажу о том, как по-быстрому реализовать DI своими руками.
RailsClub 2016: 22 октября в Москве выступит создатель Ruby Yukihiro Matsumoto и не только он
2016-08-10 в 8:22, admin, рубрики: matz, railsclub, ruby, ruby on rails, Rust, Блог компании «RailsClub», конференции, ПрограммированиеПривет! Осталось три месяца до главного Ruby-события года в России. Конференция RailsClub 2016 пройдет в этом году 22 октября в Москве, в Конгресс-центре Технополис. Отличный список спикеров, самые горячие темы, один день, два потока, 500 участников. Начинаем раскрывать детали!
Для нас конференция в этом году особенно важна. В первую очередь потому, что после долгих лет уговоров к нам таки приедет выступать сам создатель Ruby Юкихиро Мацумото! Мы очень долго готовились к этому событию, записали с помощью всего сообщество ролик-приглашение для Мацумото-сан. Если еще не видели, то смотрите:
Все получилось!
Читать полностью »
Экосистема Ruby (on Rails) с горьким привкусом, или «Как мы любим пошпынять PHP»
2016-07-28 в 2:27, admin, рубрики: php, php and ruby, ruby, метки: php and rubyЭто перевод статьи Ruby (on Rails) ecosystem bittersweet or "we like to hate PHP", написанной 30 мая 2016, т.е. совсем недавно. Я полностью согласен с её автором, и сам давно горел желанием написать что-то подобное в последнее время, но у меня не так много опыта с Ruby, поэтому моя писанина не была бы настолько объективна, как писанина человека, который этот опыт имеет, и имеет его в хорошем количестве. А тут на тебе: всё в одном месте уже собрано, и мысли прямо один в один как у меня. Грех не перевести на русский. Также, статья вообще очень хороша как небольшой набор объективного и беспристрастного анализа двух языков современной веб-разработки. В общем, далее — перевод слов автора.
многобукв; нечитал;
В этой статье я рассказываю о некоторых фактах и персональном опыте для того чтобы доказать, что PHP в данный момент живее, конкурентоспособнее, а также имеет менее связанную экосистему, чем Ruby. Я говорю о Производительности, Синтаксисе и Аспектах кодинга, Сообществе и Инструментарии разработчика.Читать полностью »
Сайдкик-самоубийца
2016-07-25 в 21:11, admin, рубрики: ruby, ruby on rails, rubyonrails, sidekiq, метки: sidekiqТак уж получилось, что появилась необходимость досрочно останавливать уже запущенный сайдкик-воркер. И, как уже всем причастным известно, запущенную задачу невозможно остановить штатными средствами — этого просто не предусмотрено архитектурой. И когда сайдкик-задача начала уже выполняться, то ее уже ничто не остановит. Конечно же, в интернетах тут же нашлось решение с убиением руби-процесса и с отменой перезапуска оного, но это решение по очевидным причинам не может устраивать ни разработчиков приложения, ни разработчиков сайдкика.
В итоге решение появилось откуда не ждали и оказалось крайне простым и очевидным. Читать полностью »