Рубрика «ruby» - 50

Вместо вступления

Подкаст вышел с опозданием, поскольку мы ждали, когда мне вернут микрофон. На момент записи его так и не отдали, поэтому меня слышно не очень хорошо, выводы сделали, своих ошибок повторять не будем.
Таинственный образом с хабра пропал «подкаст», поэтому слушайте нас на rpod-е.

Новости

Вышли Rails 3.0.12, 3.1.4, 3.2.2
Товарищ Константин, О времени и о себе. Кстати, упоминаемая в интервью книжица «Sinatra: Up and Running» — тоже очень ничего. Можно рекомендовать как академическое пособие для желающих разобраться, как правильно готовить на Руби web-(и прочее)-middleware и все такое.
Деплой как в Heroku
4 марта вышло обновление на Github, связанное с массовыми уязвимостями на этом сайте
6 марта вышел Vagrant версии 1.0
7 марта вышел Bundler 1.1
Lightrail — легкий rails-стэк для json приложений
Ruby 2.0 Enumerable::Lazy
Except.io — сервис, аналогичный airbrake.io

Обсуждение

Системы полнотекстового поиска

Sphinx — система полнотекстового поиска от Андрея Аксенова
Full Text Search в Postgresql — система полнотекстового поиска, встроенная в Postgresql
Elasticsearch
Solr — сервер полнотекстового поиска от Apache Foundation
Lucene — движок полнотекствого поиска от Apache Foundation

Срывая покровы с Ивана Самсонова

Профиль Ивана на Моем Круге
Профиль Ивана на LinkedIn
Твиттер Ивана
Wheely — компания, где сейчас работает Иван
РГГУ — а здесь Иван сейчас учится

Контакты RubyNoName подкаста

Наш твиттер
Email для предложенией
Читать полностью »

Иногда возникает ситуация, когда необходимо получить production базу к себе, для разработки и тестирования.
Я написал, как часть гема этот рецепт, сейчас работает только если база на production и development одна и та же (в нашем случае postgresql). При желании можно добавить и другие базы.

Для этой цели (как и для других) нам отлично подойдет Capistrano.

Для того, чтобы использовать рецепт необходимо установить 7zip на сервере и локальной машине:

sudo apt-get --assume-yes install p7zip-full

Читать полностью »

в 16:17, , рубрики: ruby, метки:

Недавно мой патч Enumerable::Lazy был принят в ruby trunk. А это значит что в ruby 2.0 мы сможем:

a = [1,2,3,4,2,5].lazy.map { |x| x * 10 }.select { |x| x > 30 } #=> вычисление не происходит
a.to_a #=> [40, 50], объект вычисляется за один проход.

Читать полностью »

image

Наверняка все слышали шумиху вокруг проекта travis-ci.org. Я не являюсь исключением и учитывая, что один из его разработчиков, Джош Калдеримис (Josh Kalderimis), выступивший на прошедшей конференции toster.ru, разжег мой интерес еще больше, то я решил окончательно разобраться, что такое travis-ci и с чем его едят. После прочтения вы узнаете как данный сервис может помочь ruby-разработчикам, а также как ему могут помочь они. Располагайтесь поудобнее, начнем...Читать полностью »

В данной части приведён список методов для работы с HTTP Api.

Список HTTP Api опций приведён в первой части данного туториала.
Список дополнительных HTTP Api опций приведён в третей части.

Читать полностью »

В данной части приведён список дополнительных HTTP Api опций которые влияют на работу приложения и фреймворка в целом.

Список основных HTTP Api опций приведён в первой части данного туториала.
Вторая часть знакомит с View Api опциями и методами работы с ним.

Читать полностью »

Знакомство с Presto — Часть Вторая

Продолжаем осваивать простоту использования свеже-выRUBYленного веб-фреймворка.

Это вторая часть и посвящена она целомудрию HTML рендеринга.

А именно:

  • выбор движка и расширения
  • установка пути к шаблонам
  • как, где и кем используются лайоуты
  • рендеринг текущего/произвольного акшиона
  • рендеринг произвольного файла/лайоута
  • компиляция шаблонов для увеличения производительности
  • использование изолированного окружения для увеличения уровня безопасности
  • итд

Читать полностью »

Краткий экскурс

Меня часто спрашивают — чего ради ещё один фреймворк если есть Rails.
Я часто отвечаю — затем что поезд не решает те задачи которые решает автомобиль.

Ещё чаще меня спрашивают — чего ради Presto если есть Sinatra.
Также часто я отвечаю — потому что автомобили отличаются в плане скорости, комплектации и удобства.

Читать полностью »


Новости

Grape
24 приёма в Ruby
Ruby 1.9.3-p125
MacRuby & MountainLion + what you can do to help the project
9 февраля зарелизился Spree 1.0.0
Полезные инструменты для Capistrano — capistrano-deploy
"MicroGems: five minute RubyGems"
22 февраля вышел JRuby 1.6.7
23 февраля вышел <a rel="nofollow"Читать полностью »

Использовался набор бенчмарков из ruby-1.9.3-p125. Все тесты запускались на:

ОС: OSX Lion 10.7.3
Процессор: 2.3ГГц i5
Память: 8Гб 1333 MHz DDR3
SSD: OCZ Vertex 3 Max IOPS SATA III 2.5" 120Гб

Реализации:
— ruby 1.8.7p249 (системный ruby)
— ruby 1.9.3p125
— ruby 2.0.0dev (2012-02-25 trunk 34796)
— MacRuby 0.12 (ruby 1.9.2) (Nightly build)
— maglev 1.0.0 (ruby 1.8.7)
— rubinius 1.2.4 (1.8.7 release 2011-07-05 JI)
— rubinius 2.0.0dev (1.9.3 e22ed173 JI)
— jruby 1.7.0.dev (ruby-1.9.3-p28) (Java HotSpot(TM) 64-Bit Server VM 1.7.0_04-ea)
— jruby 1.6.7 (ruby-1.8.7-p357) (Java HotSpot(TM) 64-Bit Server VM 1.7.0_04-ea)

JRuby запускался с флагами --server -Xinvokedynamic.constants=true

Компилятор имеет значение

Время от времени я вижу посты об увеличении производительности ruby засчётЧитать полностью »