Метка «ruby»

Имея сравнительно небольшой опыт работы с PBX Asterisk и не имея практического опыта работы с OTRS, я некоторое время доводил интеграцию этих систем до ума. Первая документация по интеграции, которую мне доводилось прочесть, использовала старую версию OTRS и работала через SOAP интерфейс. Это конечно меня не радовало и я продолжил поиск уже по документации OTRS. Как оказалась данная система кроме SOAP имеет и REST API. Который я как раз и использовал. Я не стану рассказывать, как настраивается OTRS и Asterisk, и расскажу про сам процесс интеграции.

Со стороны Asterisk будет использоваться AGI интерфейс для работы с внешним скриптом, экстеншены будут написаны на AEL. Я не много пишу на ruby, по этому мой выбор пал именно на этот язык программирования.
Читать полностью »

Ruby on Rails конвенция. Оптимизация для разработки - 1Феноменальная популярность Ruby on Rails в значительной степени обусловлена переходу к новым трендам и технологиям в нужный момент времени.

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

Конвенция активно развивалась в последние десять лет, но большая часть основных идей осталась не тронута. Я не претендую на некую фундаментальную уникальность этих идей. Главное достижение Rails это объединение вокруг себя сильного сообщества людей с нестандартным подходом и мировоззрением о программировании и программистах.
Читать полностью »

Некоторое время назад я был заинтересован поиском альтернативы функции «Текст в Речь» в Mac OS X под Linux и позднее под Windows. Мне хотелось сконвертировать целую статью или если это будет возможным книгу для прослушивания ее на смартфоне в вагоне метро.

Я первым делом, соответственно занялся поисками готовых решений. Но отчасти, безрезультатно. Читать полностью »

Введение

Продолжаем тему. В данной статье задействуем несколько приемов метапрограммирования. Для наглядности напишем простую версию ORM (наподобие ActiveRecord).
Уверен, опытные разработчики Ruby не раз встречали различные приемы метапрограммирования изучая исходники gem'ов или стандартной библиотеки Ruby. ActiveRecord бесспорно использует все возможности Ruby, превращая использование сложного ORM в простой и удобный процесс.

В нашем примере реализуем простой базовый класс для всех «моделей» — очень упрощенный аналог ActiveRecord::Base, который будет предоставлять следующие возможности:
1) Новая модель добавляется наследованием от базового класса
2) Таблица именуются в базе по имени класса модели, к примеру: class Pet -> table pet; class Person -> table person (для упрощения)
3) Вставка/сохранение объекта в базе данных
4) Возможность поиска объекта по id и выборка всех объектов
5) Модель имеет атрибуты, соответствующие колонкам в таблице, а так же access-методы для данных атрибутов (для упрощения поддержка строковых и числовых значений)
6) Модель работает напрямую с адаптером mysql
Читать полностью »

Как мы боролись с проблемами производительности в «Redmine». Кто виноват и как помочь?
Конечно, статья не совсем верно названа. В чистом Redmine особо больших проблем с производительностью нет. Но мы, в процессе разработки большого количества плагинов, эти проблемы с легкостью вносили.

Поэтому, статья расскажет о том, как разобраться в чем причина медленной работы той или иной функции плагина Redmine и какие инструменты могут помочь в этом. Многие советы, естественно, могут касаться не только самого Redmine, но и Rails-приложений в целом.

Симптом у проблем с производительностью всегда один – это разгневанный пользователь, кричащий, клянущий твое ПО и возможно тебя лично.
Читать полностью »

в 10:05, , рубрики: ruby, sinatra, метки: ,

Для изучения ruby был выбран учебный проект в котором простая задача, написания тестов для web. Ввиду отсутствия знаний и опыта было решено использовать упрощенный фреймворк sinatra. Читать полностью »

image Более 1000 разработчиков придут в эту субботу на DevConf 2014,
уникальную конференцию которую создали сообщества разработчиков.
DevConf является результатом деятельности огромного количества профессионалов.
В организации каждого потока принимают участие уважаемые в соответствующем сообществе люди. Ни одного «пиарного» доклада за всю историю!

DevConf 2014 — уже завтра — 14 июня! Опубликована окончательная программа конференции
Читать полностью »

Небольшое дополнение для пользователей Mac OS X (у меня сейчас OSX 10.9.3, но будет работать и под младшие версии).
Для выполнения всех действий руководства от XakepRU в статье "Как запилить свой дешборд на все случаи жизни?" вам будет необходимо провести первоначальную настройку вашей ОС Mac OS X.

В установку OS X изначально вшит Ruby и использовать его для подобного рода проектов система просто так не даст и при попытке установки гемов будет ругаться на права записи.

Примерно так: You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory

Есть два варианта:

  • «расковырять» настройки системы и в случае неправильных действий, скажу грубо, поломать OS X. Ломать мы ничего не хотим поэтому данный вариант пропускаем и будем делать качественно.
  • установить менеджер версий Ruby, например, rbenv или RVM для установки дополнительной версии(й) Ruby, с которой вы сможете делать все, что захотите. Останавливаемся на этом варианте, буду писать про rbenv.

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

Redmine logo

Приведу кратко основное по RedMine:

  • ведение нескольких проектов;
  • система отслеживания ошибок;
  • диаграммы Ганта;
  • настраиваемые произвольные поля для инцидентов, временных затрат, проектов и пользователей;
  • лёгкая интеграция с системами управления версиями (SVN, Git, Mercurial);

Мне очень Важно было установить свежие версии всех модулей, почерпнул много источников, но практически все с недоделками, и очень таки неудобная конфигурация у них получалась.
Вот и пришлось самому сделать универсальную конфигурацию, которая может работать под любой из основных Веб-серверов.
Читать полностью »

DevConf::Ruby — 14 июня — программа сформирована14 июня (суббота) 2014 — пройдет крупнейшая конференция по Ruby, PHP, Python,JavaScript, Android

62 доклада от авторов языков, баз данных и экспертов в WEB-разработке!

Впервые в России нам удалось собрать авторов MySQL, PostgreSQL, Percona Server, Sphinx, Tarantool в отдельном потоке DevConf::Storage — по сути это отдельная конференция по современным БД.

Поток Ruby насыщен актуальными темами, который обязан знать каждый Ruby-разработчик

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