Обновить
8K+

Ruby *

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

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

Настоящая популярность или учебная тревога?

Время на прочтение2 мин
Охват и читатели2K
После приобретения компанией Black Duck Software поисковой системы koders.com, в её поисковое хранилище было добавлено более 200 миллионов строк кода. Компания произвела анализ поисковых запросов и выяснила, что Ruby — четвёртый по их количеству язык программирования после Java, C/C++ и C#. Можно не сомневаться, что это довольно интересные данные, но о чём они говорят?

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

rubymag — журнал о языке Ruby на русском языке

Время на прочтение1 мин
Охват и читатели1.2K
Сегодня наша команда открыла очередной проект — rubymag. Это электронный журнал посвященный языку Ruby и всему, что с ним связано.

Идея rubymag появилась благодаря нашему предыдущему проекту rubyflow.ru. Rubyflow — социальные новости о языке Ruby, отобранные сообществом разработчиков. За два месяца работы этот сайт приобрел несколько десятков пользователей и каждый день его читают несколько сотен человек.

Но проблема в том, что формат статьи на rubyflow.ru ограничен лишь анонсом в пару абзацев, а очень часто бывают интересные материалы с более обширным описанием. Кроме того, есть полезные статьи на английском, которые недоступны некоторым разработчикам в силу незнания этого языка.

Суммируя все это, мы решили открыть отдельный ресурс, на котором будем публиковать статьи о проектах, библиотеках и событиях. Каждую неделю на rubymag.ru несколько новых статей, а также по пятницам обязательный дайджест о событиях за неделю.

Узнавать об обновлениях журнала можно собственно на сайте rubymag.ru, через RSS, подписку по электронной почте или Twitter.

Мы желаем вам приятного чтения.

Peopleask, игрушечное приложение Rails с открытым кодом

Время на прочтение1 мин
Охват и читатели683
У Google есть такой инструмент Google suggest, который показывает как часто люди ищут что-то. Там часто можно встретить очень забавные веши.

На этой почве появилась идея сделать маленький проект.

Сайт: www.peopleask.ru
Код на Ruby On Rails: github.com/fs/rails-project-peopleask/tree/master

Мне больше всего нравятся результаты для запроса «Что будет если»

iPhone версия ROR сайта

Время на прочтение6 мин
Охват и читатели1.1K
Как бы вы не относились к iPhone, вы не можете отрицать, что этот телефон захватил хороший кусок рынка мобильных устройств. И, по моему мнению, именно он дал возможность нормально пользоваться интернетом с телефона. Но хотя встроенный safari полноценен (спасибо, Webkit), многим хочется сделать специальную версию сайта для iPhone, выглядящую как настоящее айфоновское приложение (например, iweather.yandex.ru).
iweather  iphone.livecookbook.ru
Одной из наиболее популярных библиотек для создания адаптированной версии сайта является iUI.
Прочитать про iUI и ее интеграцию

Кеширование статики через expires и asset timestamps

Время на прочтение1 мин
Охват и читатели1.6K
Для ускорения загрузки страницы можно выставлять у статичных компонентов заголовок expires далеко в будущее.
Однако есть одна проблема: вам придётся менять название файла или путь к нему, чтобы пользователь узнал, что файл нужно перечитать.

В Rails есть полезная возможность assets timestamps, если честно, раньше не понимал зачем это нужно.

Разберёмся?

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

Ruby on Rails: исследуем волну

Время на прочтение1 мин
Охват и читатели1.1K
Начнём, естественно, с самого красноречивого графика. Означает он лишь одно: информациую о «Ruby on Rails» стали реже искать. Удивляться этому не стоит — такой период проходит любая технология, всплеск уже прошёл и с определённой увереностью можно сказать, что пик уже достигнут.

image
Далее о повседневном использовании и рынке труда

Перечень требований к коду Ruby on Rails приложения

Время на прочтение2 мин
Охват и читатели3.6K
На моей практике Ruby и Ruby on Rails оказались самым тяжелым в изучении сочетанием языка и фреймворка. Те люди, которые начинали программировать с C, C++ или Java, обнаружат в Ruby абсолютно другой (и более правильный!) подход к ОО-дизайну, а в Rails — много интересных решений, которые необходимо понять и осознать. И хотя изучение Ruby заняло у меня много времени (и я уверен, что еще очень многое предстоит узнать), я люблю эту технологию и не собираюсь возвращаться назад.

У меня есть опасение, что по мере роста популярности Ruby и Rails будет появляться все больше разрабочиков, изучающих Ruby через призму закоренелого Java-подобного мышления. С одной стороны это хорошо. Но с другой стороны это плохо тем, что некачественный код, когда он становится общедоступным, порождает еще больше некачественного кода.

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

Неделя на Рельсах (выпуск от 10 сентября 2008 г.)

Время на прочтение2 мин
Охват и читатели721
Добро пожаловать в пятый выпуск «Недели на рельсах», еженедельный отчёт о событиях в околорельсовом сообществе. Antonio Cangiano (автор идеи) был весьма занят, поэтому на этой неделе я решил его подменить.

Вы, скорее всего, уже слышали о выходе Rails 2.0.4 и Rails 2.1.1. Оба релиза — в основном исправляют ошибки, за подробностями отправляйтесь в списки изменений.

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

Создание привлекательных диаграмм

Время на прочтение4 мин
Охват и читатели1.8K
Проблема
Хотелось бы иметь возможность динамической генерации привлекательных диа­грамм на основе данных приложения.
Нам потребуется
  • ImageMagick. Эту библиотеку можно получить по адресу www.imagemagick.org.

  • Привязка Ruby к ImageMagick — RMagick. Устанавливается из gem-пакета rmagick. Настройка ImageMagick и RMagick иногда может вызывать небольшие затруднения. Перед установкой RMagick следует заглянуть в сборник самых распространенных вопросов и ответов по адресу rmagick.rubyforge.org/install-faq.html.Когда все получится, останется только радоваться.

  • Библиотека для построения диаграмм Джефри Грозенбака (Geoffrey Grosen-bach) Beautiful Gruff, которая устанавливается из gem-пакета gruff.

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

Реализация оперативного просмотра

Время на прочтение4 мин
Охват и читатели548
Проблема
Хотелось бы дать пользователям возможность оперативного просмотра данных в процессе редактирования, чтобы не получалось так, что после отправки из фор­мы данные появились в испорченном формате (когда речь идет, к примеру, о дневниковой записи, которую собираются выставить на всеобщее обозрение).

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

Создание сортируемого списка с перетаскиваемыми элементами

Время на прочтение7 мин
Охват и читатели2.2K
Проблема
В приложении есть модель со списком, который нужно отсортировать. Жела­тельно управлять порядком сортировки списка, находящегося в базе данных, и предоставить пользователям привлекательный, современный интерфейс с пе­ретаскиванием, позволяющий установить порядок следования элементов списка.

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

Автозаполнение текстового поля

Время на прочтение3 мин
Охват и читатели2.8K
Проблема
Вам наверняка приходилось пользоваться изящной работой элементов управ­ления, обладающих свойством автозаполнения. Вы точно знаете, стоит только приступить к вводу данных, как приложение еще до завершения ввода начнет ди­намический подбор соответствий. Это был самый впечатляющий писк моды в де­вяностых годах прошлого столетия.
Для нового, сногсшибательного приложения вполне естественно желание оформить стильный поиск.
Читать дальше →

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

Местное редактирование формы

Время на прочтение3 мин
Охват и читатели893
Проблема

В приложении часто встречаются отдельные фрагменты данных, подвергаемые незначительной пользовательской правке. Было бы неплохо предоставить пользователям приложения простой способ редактирования данных прямо там, где они находятся, не открывая отдельной формы.

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

Аутентификация в Rails — плагин jiff_auth

Время на прочтение3 мин
Охват и читатели689
Работая над рельсовым проектом мне, естественно, понадобилось сделать аутентификации пользователей. Монополией на это в Rails обладал плагин restful_authentication, который мне не понравился по нескольким причинам:
  • он генерирует много кода
  • он негибок в настройках
  • он сложно интегрируется в существующие модели и контроллеры (надо создавать с нуля)
  • к нему крайне невнятная документация
Исправить перечисленное и стало задачей плагина jiff_auth, который я решил закодить.
Ниже — небольшая инструкция по настройке и использованию.

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

Qt + Ruby = настройка в Linux и Windows

Время на прочтение3 мин
Охват и читатели11K
Привет всему сообществу. Сегодня напишу как настроить привязку qt и ruby в Linux и Windows.
Ruby — интерпретируемый язык высокого уровня для быстрого и удобного объектно-ориентированного программирования. Язык обладает независимой от операционной системы реализацией многопоточности, строгой динамической типизацией, «сборщиком мусора» и многими другими возможностями. Ruby близок по особенностям синтаксиса к языкам Перл и Эйфель, по объектно-ориентированному подходу к Smalltalk. Также некоторые черты языка взяты из Python, Лисп, Dylan и CLU. Подробнее тут

Trolltech Qt (произносится «кьют») — кросс-платформенный инструментарий разработки ПО на языке программирования C++.Подробнее тут
Читать дальше →

Заметки о Ruby. №1. [[: key,: value], [: key2,: value2]] --> {: key =>: value,: key2 =>: value2 }

Время на прочтение1 мин
Охват и читатели1.1K
Планирую начать очень короткие заметки о ruby.

Иногда нам нужно преобразовать структуру вида [[:key, :value], [:key2, :value2]] в
{ :key => :value, :key2 => :value2 }

Короткое решение:

Hash[[[:key, :value], [:key2, :value2]]]

К сожалению, в ruby 1.8.6 не работает. В 1.8.7 баг (?) исправили.

Обычное решение:

[[:key, :value], [:key2, :value2]].inject({}) { |hash, pair| hash[pair[0]] = pair[1]; hash }

Мегакороткое решение, а главное понятное и работает везде от Eugzol’а:

Hash[*[[:key, :value], [:key2, :value2]].flatten]

Помощь в отладке шаблонов на Rails

Время на прочтение1 мин
Охват и читатели529
Rails — отличный framework, но отладка приложений на нем, обычно не такое уж тривиальное действие. IDE заточенных под это нет, так что все делается вручную. Часто, отладка внутри View'ов основывается на <%= debug @переменная %>. Оказывается, есть плагин, который позволяет это дело облегчить. Называется он debug_view_helper и был создан с целью простового добавления debug информации к view шаблонам. Он позволяет просматривать:
  • Параметры реквеста
  • Переменные сессии
  • Flash-переменные
  • Переменные шаблонов


Он достаточно старый и устанавливается прямо из svn:
svn co www.realityforge.org/svn/code/debug-view-helper/trunk vendor/plugins/debug_view_helper


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

Фоновая обработка видео в Ruby on Rails

Время на прочтение4 мин
Охват и читатели2.8K
Допустим у вас есть сайт, на котором пользователи загружают видео, и это видео надо конвертировать в flv формат.
Делать это непосредственно после загрузки, в текущем рабочем потоке не хорошо, т.к. потоков этих ограниченное число, и при большой нагрузке сайт будет недоступен.
Будет гораздо лучше, если обработкой этих видео-файлов займется демон.
тонкости реализации демонов и потоков в ror