Обновить
0.15

Ruby *

Динамический высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Большое обновление ObjectScript 0.99-vm3. Часть 1: Регистровая виртуальная машина

Время на прочтение7 мин
Охват и читатели6.2K
ObjectScript — новый встраиваемый и очень легкий объектно-ориентированный язык программирования с открытым исходным кодом. ObjectScript расширяет возможности таких языков, как JavaScript, Lua, Ruby и PHP. Вы можете ознакомится с первоначальным синтаксисом языка в этой статье.

ObjectScript 0.99-vm3 — новая быстрая виртуальная машина и новые возможности.

Убраны некоторые операторы, например, clone, numberof и др. заменены функциями. Последнее значение в функции возвращается автоматически. Добавлена короткая запись для доступа к членам объекта — @varname, новый короткий синтаксис для объявления функций и мн. др.
Читать дальше →

Компактная С++ библиотека для программирования конечно-разностных методов в операторном стиле. Часть 1. Семантика

Время на прочтение30 мин
Охват и читатели10K
Представлена семантика разработанной библиотеки pde++ для программирования конечно-разностных методов в операторном стиле. Основными объектами библиотеки являются сеточная функция, сеточная ячейка и сеточные операторы, арифметические соотношения между которыми максимально приближают программный код к его математической нотации. Библиотека pde++ представлена всего несколькими заголовочными файлами, не имеет внешних зависимостей и использует концепцию ленивых вычислений.
Читать дальше

Генерация PDF на сервере в Ruby

Время на прочтение8 мин
Охват и читатели5K
Чуть более месяца назад я устроился верстальщиком в старт-ап, в команду Ruby-разработчиков. Так повезло, что команда оказалась очень хорошей и моё стремление учиться совпало с их желанием получить хорошего специалиста.

HTML-вёрстка сама по себе имеет немного ценности и не единственное, чем можно нагрузить верстальщика.

На нашем сайте пользователь оформляет себе покупку и ему на почту уходит подтверждение с электронным билетом. в котором указаны детали заказа, а так как в хорошем проекте всё должно быть хорошо и ярко, дизайнер нарисовал макет квитанции. Ну а мне, как верстальщику было поручено реализовать это всё в коде.

Варианты генераторов для Ruby


Согласно сайту Ruby Toolbox существует два принципиальных подхода к генерации PDF-файлов:


Первый вариант подразумевает генерацию HTML-страницы и конвертацию её в PDF, в то время как второй позволяет, по факту, работать с canvas и генерировать документ без дополнительных прослоек.

Я выбрал вариант с использованием Prawn (по большей части, конечно, по тому, что предыдущая версия PDF-файла генерировалась этим способом) даже не смотря на то, что мне пришлось вынырнуть из привычного мне мира HTML и CSS

Тех, кому интересно приглашаю под хабракат.
Читать дальше →

Ruby NoName Podcast S04E20

Время на прочтение1 мин
Охват и читатели2.6K

Использование регулярных выражений в Ruby

Время на прочтение4 мин
Охват и читатели49K
Регулярные выражения — спасение от всех бед для одних и ночной кошмар для других разработчиков, а если говорить объективно, то это мощнейший инструмент, требующий, однако, большой осторожности при применении. Регулярные выражения (регексы, регекспы, регулярки) в языке Ruby основаны на синтаксисе Perl 5 и потому в основных чертах знакомы всем, кто использовал Perl, Python или PHP. Но Ruby тем и хорош, что каждый компонент языка реализован со своим собственным подходом, упрощающим использование данного инструмента и увеличивающим его мощность. В предлагаемой мной небольшой статье рассматриваются особенности регулярок в Ruby и их применение в различных операторах.
Читать дальше →

RailsClub'Moscow 2012. Материалы

Время на прочтение3 мин
Охват и читатели2.5K
Добрый вечер, уважаемые посетители конференций RailsClub.

В сентябре мы провели нашу очередную конференцию. Хотим искренне поблагодарить всех участников, пришедших на наше мероприятие.

В этот раз нас собралось действительно много. Я рад, что увидел много новых лиц. По моим ощущениям, процентов 80 из пришедших ребят — мне не знакомы. Это значит, что наше сообщество стремительно растет. И я очень рад тому, что railsclub вносит свой вклад в развитие сообщества и способствует данному росту.

Наши мероприятия продолжаются. Впереди нас ждет секция railslub'а на highload'е и конференция RailsClub'Ульяновск.

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

Фотографии:

Конференция — www.facebook.com/media/set/?set=a.282688708508940.59084.115204928590653
AfterParty — www.facebook.com/media/set/?set=a.283311401780004.59279.115204928590653

Видео — railsclub.ru/materials/video_2

Презентации — railsclub.ru/files/presentations/railsclub_moscow_2012.zip

Еще раз благодарим наших спонсоров и всех, кто помогал нам.

Читать дальше →

Ruby-встречи в Санкт-Петербурге снова в моде

Время на прочтение2 мин
Охват и читатели3.4K
В четверг 4 октября в Бизнес Инкубаторе «Ингрия» прошла первая встреча Saint Petersburg Ruby User Group. Хотелось бы провести некую ретроспективу мероприятия, подвести итоги, собрать мнения и рассказать о дальнейших планах.
Читать дальше →

Курс по Ruby на Codecademy

Время на прочтение1 мин
Охват и читатели18K
По многочисленным пожеланиям трудящихся учебный портал Codecademy представил курс по языку программирования Ruby.

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

Наиболее интересен курс будет, по-моему, тем, кто начинает изучение Ruby не как очередного языка, а как первого, тем, кто начинает изучать программирования вообще. В частности для тех, кто знаком только с HTML+CSS, но хочет начать разработку приложений на базе фреймворка Ruby on Rails. Понятия «переменная», «объект» и т. п. вводятся по ходу изложения.

Курс на английском, но на простом и понятном даже для меня с моим Soviet English.

Ну и собственно ссылка на курс: www.codecademy.com/ru/tracks/ruby

P.S. НЛО, верни топики-ссылки!

Неканоническое STI в Rails

Время на прочтение4 мин
Охват и читатели9.6K
Перед тем как начать повествование, вспомним что же такое STI.

STI (Single Table Inheritance) — паттерн проектирования, который позволяет перенести объектно-ориентированное наследование на таблицу реляционной базы данных. В таблице БД должно присутствовать поле идентифицирующее название класса в иерархии. Зачастую, в том числе в RoR, поле называют type.

С помощью данного паттерна можно создавать объекты, которые содержат идентичный набор полей, но имеют разное поведение. Например, таблица пользователей, содержащая имя, логин и пароль, но использовалось два класс пользователей Admin, Visitor. Каждый класс, содержит как унаследованны так и индивидуальный набор методов. Определение того, какой класс будет создан и используется поле type, имя поля может быть переопределено.

Таким образом, если рассматривать канонический случай: имена классов хранятся в одной таблице с данными.

Но может случится иная ситуация…
Читать дальше →

Молниеносный JSON в Ruby on Rails

Время на прочтение2 мин
Охват и читатели24K
Вывод результата в JSON достаточно прост в Rails:

render json: @statuses

Это работает отлично, если нужно вывести небольшое количество записей. Но что случится, если нам потребуется вывести сразу 10'000 записей? Производительность серьезно просядет, а самыми затратными по времени окажутся сериализация JSON и операции с базой данных.

Читать дальше →

Ruby NoName Podcast S04E18

Время на прочтение1 мин
Охват и читатели2.3K

vkontakte_api: ruby-адаптер для ВКонтакте API

Время на прочтение7 мин
Охват и читатели28K
В начале этого года мне понадобилось работать с API ВКонтакте из rails-приложения. Увы, я не нашел сколько-нибудь устраивающего меня гема: где-то меня принуждали писать названия методов в camelCase (что в ruby-коде выглядит неестественно), где-то — обязательно проходить авторизацию через библиотеку (при том, что я использовал omniauth) и вообще везде для обращений к API использовался захардкоденный Net::HTTP, блокирующий реактор эвентмашины, на которую я тогда прицеливался. Также в плане документации почему-то все было очень грустно, и приходилось постоянно читать исходники.

Так появился на свет vkontakte_api. Рельсовый проект, послуживший поводом для написания данной библиотеки, уже успел почить — но гем живет и продолжает развиваться, в июле достигнув версии 1.0 (которая послужила поводом для значительных изменений). Используя faraday, библиотека поддерживает вызов любых методов API, загрузку файлов на сервера ВКонтакте и опциональную авторизацию, не принимая за программиста решения, упомянутые в предыдущем абзаце.

Посмотрим, как работать с API с помощью vkontakte_api. В качестве примера сгодится несложное веб-приложение, отображающее на странице ленту новостей (API-метод newsfeed.get), список друзей (friends.get) и групп (groups.get) пользователя, прошедшего OAuth2-авторизацию. А выглядеть это будет примерно так:


Читать дальше →

Terminal Keynote – показываем презентации в терминале

Время на прочтение2 мин
Охват и читатели12K


Terminal Keynote – это, скрипт, созданный Хавьером Нориа (Xavier Noria) для показа своих презентаций на BaRuCo 2012 и RailsClub 2012. Вся его суть в возможности показывать слайды с текстом прямо в терминале.

Читать дальше →

Ближайшие события

RailsClub'Moscow 2012. Интервью с Сау Шонг Чанг (Sau Sheong Chang)

Время на прочтение5 мин
Охват и читатели2.1K
До очередной конференции RailsClub’Moscow 2012 остается 3 дня. На 11-ый по счету слет российских рубистов приедет самая представительная компания международных Ruby звезд за всю историю конференции.

На наши вопросы уже ответили звездные спикеры Стив Клабник, Ксавье Нориа, ДиркЯн Буссинк и Винн Нидерланд. Теперь пришла очередь представить вам последнего зарубежного гостя нашей конференции, который приедет в Москву из Сингапура!

Интервью публикуются с оригинальными ответами на английском языке и нашим вольным переводом :)

Итак, Сау Шонг Чанг / Sau Sheong Chang — директор прикладных исследований в HP Labs и автор книг “Ruby on Rails Web Mashup Projects” и “Cloning Internet Applications with Ruby”.


Читать дальше →

RailsClub'Moscow 2012. Программа конференции, afterparty

Время на прочтение3 мин
Охват и читатели2.3K
Добрый день, друзья!

До очередной конференции RailsClub’Moscow остается 4 дня.

Итак, в данный момент, программа мероприятия полностью сформирована.

image

Помимо иностранных спикеров к числу докладчиков присоединились: Сергей Нартымов из brainspec.com, Юрий Соколов из mail.ru, Николай Рекубратский из undev.ru и Дмитрий Галинский из evrone.ru

Подробнее об всех докладах читайте тут — railsclub.ru/reports

Традиционно наши конференции делятся на 2 части. В первой части мы слушаем доклады и получаем знания. Вторая часть посвящена неформальному общению.

Несколько последних RoR-конференций были слабо организованы с точки зрения тусовки после конференции. Мы решили исправить эту ситуацию и в этот раз мы выбрали один большой бар для afterparty. Он находится в уютном месте в центре Москвы в двух шагах от Кремля. Наша цель — дать каждому из вас возможность потусоваться с Ruby-народом и неформально пообщаться с нашими звездными докладчиками. Подробности о вечернем мероприятии будут дополнительно объявлены на конференции.

Будем ждать вас на конференции и afterparty.

Купить билеты можно тут — railsclub.timepad.ru/event/29192

Читать дальше →

RailsClub'Moscow 2012. Интервью с Винн'ом Нидерланд'ом (Wynn Netherland)

Время на прочтение4 мин
Охват и читатели2.1K
До очередной конференции RailsClub’Moscow 2012 остается 5 дней. На 11-ый по счету слет российских рубистов приедет самая представительная компания международных Ruby звезд за всю историю конференции.

Мы уже познакомили вас со Стивом Клабником, Ксавье Нориа и ДиркЯном Буссинком. На очереди еще один звездный спикер RailsClub’Moscow 2012 — американец Винн Нидерланд / Wynn Netherland, разработчик GitHub.com, соавтор @thechangelog и книги «Sass, Compass».

Интервью публикуются с оригинальными ответами на английском языке и нашим вольным переводом :)

Wynn Netherland (США): разработчик GitHub.com, соавтор @thechangelog и книги «Sass, Compass».



Читать дальше →

RailsClub'Moscow 2012. Интервью с ДиркЯном Буссинком (Dirkjan Bussink)

Время на прочтение6 мин
Охват и читатели1.9K
До очередной конференции RailsClub’Moscow остается меньше 8 дней. На 11-ый по счету слет российских рубистов приедет самая представительная компания международных Ruby звезд за всю историю конференции.

Мы продолжаем знакомить вас со звездными спикерами RailsClub’Moscow. Сегодня мы представляем вашему вниманию интервью с ДиркЯном Буссинком / Dirkjan Bussink — голландским разработчиком rubinius и datamapper. Это третье интервью серии, ранее мы уже поговорили со Стивом Клабником и Ксавье Нориа.

Интервью публикуются с оригинальными ответами на английском языке и нашим вольным переводом :)

Dirkjan Bussink (Голландия): разработчик rubinius и datamapper


Читать дальше →

RailsClub'Moscow 2012. Интервью с Ксавье Нориа (Xavier Noria)

Время на прочтение7 мин
Охват и читатели3K
До очередной конференции RailsClub’Moscow остается меньше 2-х недель. На 11-ый по счету слет рубистов приедет самая представительная компания международных Ruby звезд за всю историю конференции.

В ожидании личной встречи мы решили задать им несколько вопросов. Звездные спикеры RailsClub’Moscow рассказали о своих планах и поделились некоторыми личными историями.

Представляем вашему вниманию интервью с Ксавье Нориа (Xavier Noria). Это второе интервью серии, которая будет опубликована в ближайшем будущем. Интервью публикуются с оригинальными ответами на английском языке и нашим вольным переводом :)

Xavier Noria (Испания): участник Rails core team и обладатель Ruby Hero Award 2010


Читать дальше →

Ruby NoName Podcast S04E17

Время на прочтение1 мин
Охват и читатели2.1K

RailsClub'Moscow 2012. Интервью со Стивом Клабником (Steve Klabnik)

Время на прочтение2 мин
Охват и читатели3.9K
До очередной конференции RailsClub’Moscow остается меньше 2-х недель. На 11-ый по счету слет рубистов приедет самая представительная компания международных Ruby звезд за всю историю конференции.

В ожидании личной встречи мы решили задать им несколько вопросов. Звездные спикеры RailsClub’Moscow рассказали о своих планах и поделились некоторыми личными историями.

Представляем вашему вниманию короткое интервью со Стивом Клабником (Steve Klabnik). Это первое интервью серии, которая будет опубликована в ближайшем будущем. Интервью публикуются с оригинальными ответами на английском языке и нашим вольным переводом :)

Steve Klabnik (США): автор «Designing Hypermedia Apis» и обладатель Ruby Hero Award 2011;


Читать дальше →

Вклад авторов