Привет. Этим постом мы начинаем наши пятничные новостные выпуски, в которых будем рассказывать о новых технологиях, поддержку которых мы внедрили в наш проект, а также о фичах, которые сделают работу с Vexor максимально продуктивной. Наша команда учитывает пожелания пользователей, и постепенно мы расширяем наш функционал.
Напомним, что Vexor CI – облачный continuous integration сервис для разработчиков с неограниченными ресурсами и поминутной оплатой, позволяющий эффективно тестировать проекты.
Читать полностью »
Рубрика «ruby» - 24
Vexor CI – Что нового?
2014-10-24 в 11:09, admin, рубрики: bitbucket, clojure, continuous integration, java, Node, ruby, ruby on rails, Rust, selenium, Блог компании VexorCI, Веб-разработка, ПрограммированиеКак быстро и просто написать DSL на Ruby
2014-10-23 в 7:15, admin, рубрики: dsl, ruby, ruby on rails, никто не читает теги, ПрограммированиеПредставленный текст является переводом статьи из официального блога компании ZenPayroll. Несмотря на то, что в некоторых вопросах я не согласен с автором, общий подход и методы, показанные в этой статье, могут быть полезны широкому кругу людей, пишущих на Ruby. Заранее извиняюсь за то, что некоторые бюрократические термины могли быть переведены некорректно. Здесь и далее курсивом выделены мои примечания и комментарии.
В ZenPayroll мы стараемся максимально скрыть сложность решаемой задачи. Начисление заработной платы традиционно было бюрократическим осиным гнездом, и реализация современного и удобного решения в столь недружелюбной атмосфере — это привлекательная техническая задача, которую очень сложно решить без
автоматизации.
ZenPayroll сейчас создает общегосударственный сервис (реализован уже в 24 штатах), что означает, что мы удовлетворяем множеству требований, уникальных для каждого штата. Поначалу мы заметили, что тратим много времени на написание шаблонного кода вместо того, чтобы сконцентрироваться на том, что делает каждый
штат уникальным. Вскоре мы поняли, что эту проблему мы можем решить, используя преимущества создания DSL, чтобы ускорить и упростить процесс разработки.
В этой статье мы создадим DSL, максимально близкий к тому, что мы используем сами.
Читать полностью »
Менеджер памяти в руби: жди подвоха
2014-10-20 в 15:32, admin, рубрики: memory leaks, memory management, rubyВ руби реализовано автоматическое управление памятью. В большинстве случаев это хорошо. Но, к сожалению, иногда это бывает больно.
Менеджер памяти руби одновременно и элегантен, и не лишен странностей, в любую минуту готовых обернуться неприятным сюрпризом. Руби хранит объекты (RVALUE) в так называемой куче (это не heap в классическом понимании c-программистов, у руби своя куча). На низком уровне, RVALUE — это обычная c-struct, состоящая из области «атрибутов» и собственно области «данных». Подробный рассказ о том, как внутри хранятся объекты выходит за рамки данной заметки; достаточно просто понимать, что каждому объекту в руби соответствует такой вот RVALUE. Сборщик мусора считает ссылки на него, и очищает слот, когда счетчик обнуляется. В чисто академических целях скажу, что размер каждого такого слота зависит от архитектуры:
/*
* sizeof(RVALUE) is
* 20 if 32-bit, double is 4-byte aligned
* 24 if 32-bit, double is 8-byte aligned
* 40 if 64-bit
*/
Итак, у нас есть слоты (это принятое название, slot), размером около сорока байт, в которых хранятся… Вот тут и начинается самое интересное. Там не просто хранятся ссылки на объекты, размещенные в настоящей системной куче, как, наверное, подумали люди, знакомые с реализацией более традиционных сборщиков мусора.
Как рубисту пережить апдейт OSX 10.10 Yosemite
2014-10-20 в 11:58, admin, рубрики: osx, ruby, ruby on rails, боль и страданиеНа днях вышла очередная версия OSX 10.10 Yosemite, и если для обычных пользователей маков вопрос «обновляться или нет» не стоит, то разработчики подобным вопросом вполне могут задаться. Редкий большой апдейт прошлых лет не приносил нам тех или иных проблем с софтом, библиотеками и консолью. Не может похвастаться отсутствием проблем и нынешнее обновление.
Одним из лучших советов тут конечно было бы подождать месяц-другой и только затем обновляться — избавит от многих проблем и потери времени. Но ждать не хочется, а посему после обновления у вас гарантированно всё сломается (речь далее в основном идёт о ruby и rails): будут выскакивать seg fault'ы, не будут собираться некоторые гемы, возникнут проблемы со скриптами в консоли.
Исправление некоторых проблем нагуглить будет легко, а для некоторых предлагают лишь хаки в виде задания дополнительных параметров компиляции и переменных окружения.
Читать полностью »
VexorCI — свежий взгляд на continuous integration
2014-10-17 в 14:08, admin, рубрики: clojure, continuous integration, java, node.js, ruby, ruby on rails, Rust, Блог компании VexorCI, Веб-разработка, Программирование Привет.
Меня зовут Олег Балбеков, я хочу рассказать вам о нашем новом проекте Vexor CI.

Vexor CI – облачный continuous integration сервис для разработчиков, позволяющий эффективно тестировать проекты.
Ежедневно разработчики используют CI-сервисы, однако большинство из них дорогие, медленные, неэффективные и накладывают большие ограничения на использование.
Vexor:
- для тех, кому надоело тратить время и деньги на поддержание тестовой инфраструктуры;
- для тех, кому давно не хватает ресурсов локального сервера;
- для тех, кто не решается на облачный CI потому, что дорого;
- для тех, кто устал ждать очереди на просчёт тестов в обычном облачном CI;
- для тех, кому действительно важна скорость.
У нас справедливая цена (поминутная оплата) и безлимитные мощности для каждого. Всем подключившимся мы дарим $10 и не берём оплату, пока вы настраиваете сервис. У нас самая дружественная русскоязычная поддержка (в моём лице). Подключайтесь!
Итоги RailsClub 2014
2014-10-13 в 11:52, admin, рубрики: ruby, ruby on rails, Блог компании «RailsClub», конференцияВсем привет!
Как вы, наверное, уже знаете, две недели назад прошла конференция RailsClub Moscow 2014. Надеемся, что все участники получили свежий заряд знаний, вдохновения и общения, то есть нарубизировались на год вперед :)
Здесь мы хотим поделиться материалами с коммьюнити, сказать спасибо всем причастным и еще раз вспомнить, как это было.

Начнем!
Читать полностью »
Настройка Guard для автоматизации Ruby on Rails разработки
2014-10-08 в 13:03, admin, рубрики: guard, jasmine, javascript тестирование, rspec, rubocop, ruby, ruby on rails, автоматизация, автоматизация тестирования, Веб-разработкаВсем привет! По моему мнению, каждый программист должен стремиться к автоматизации и оптимизации всего, что движется и еще нет. В этой статье будет рассказано о том, как автоматизировать рабочий процесс Ruby on Rails разработчика с помощью Ruby гема под названием Guard. Эта статья в первую очередь полезна Ruby разработчикам, но может пригодиться и другим.

Что такое Guard?
Новые книги по Ruby
2014-10-02 в 14:43, admin, рубрики: rails, ruby, ruby on rails, Блог компании Издательский дом «Питер», книги Всем привет!
Давно не выходило свежих книг на русском языке по языку Ruby. Как вы считаете?
Мы предварительно отобрали несколько потенциальных кандидатов на перевод и хотим узнать о них мнение наших читателей.
Grape: не рельсами едиными
2014-09-26 в 15:21, admin, рубрики: api, ruby, ruby on rails, Веб-разработка 
В этом посте я хотел бы познакомить вас с Grape — веб-фреймворком, написанным на ruby, предназначенным для быстрой и удобной разработки API, а также немного порассуждать о судьбе Rails в свете последних тенденций в веб-разработке.
Читать полностью »
Почти полное руководство по написанию Ruby гемов
2014-09-25 в 14:36, admin, рубрики: gem, ruby, ruby gems, ruby on rails 
Доброго времени суток, user.
Не так давно у меня возникла задача сделать прототип для одного проекта. В него входила работа с Facebook Graph API. Поковыряв некоторые гемы, я понял, что они для меня не совсем удобные или же реализуют нужный функционал уж слишком сложно. И тут в моей голове всплыла старая идея о написании своего гема. Загуглив массу запросов по этой теме, не нашел полной информации, тем более на русскоязычных ресурсах. Вот так и возникла идея этой статьи. Руководство названо «почти полным», так как тут освещены не все аспекты, а лишь те, которые минимально необходимы и желательны для начала существования продукта вашего воображения. Прошу под кат!
Читать полностью »

