Нам нужны твои мозги

Хотите расти как разработчик и найти крутую работу? Не протирайте штаны — займитесь Open Source проектами. Так легче всего попасть в лучшие команды разработчиков и положить себе в резюме настоящий проект, вместо нелепых «примеров кода». Но найти подходящий проект для участия сложно. Начинаются лень и отговорки, а за ними — отсутствие профессионального роста, критики по-настоящему крутых программистов, уныние и застой.

На Cult of Martians мы собираем интересные задачи для современных веб-программистов. Можно выбрать подходящую по сложности, продолжительности и специализации. Задачи не выдуманы «из воздуха» — каждая решает насущную проблему, и решить ее можно через создание нового Open Source проекта или улучшение существующего. Решайте задачи, прокачивайтесь, присылайте решение на оценку. Лучших могут пригласить к себе на работу компании, программистам которых понравится ваше решение.

Помощь запрашивалАндрей СитникАндрей Ситник Андрей Ситник

ПомогЮрий ЛебедевЮрий Лебедев Юрий Лебедев

Бэк: Добавить rake-задачи в Logux Rails

Для новичков, задача на несколько дней

Logux Rails — gem, позволяющий связать Logux-сервер и приложение на Ruby on Rails. В каталоге app/logux/ разработчик описывает права доступа и контроллеры для разных типов событий от Redux и подписок.

Нужно добавить две rake-задачи:

  1. rake logux:actions — чтобы вывести action.type, которые ожидают все обработчики событий из app/logux/actions.
  2. rake logux:channels — чтобы вывести все подписки, которые ожидают обработчики подписок из app/logux/channels.

Польза: получить open source портфолио в Ruby, разобраться с Rake, научиться работать с Logux.

  1. Форкнуть Logux Rails.
  2. Изучить пример приложения.
  3. Найти способ собрать список всех обработчиков событий из app/logux/actions. Сгенерировать, какой action.type они ждут.
  4. Найти способ, собрать список всех обработчиков подписок из app/logux/channels. Сгенерировать, какой action.channel они ждут.
  5. Создать файл lib/rake/logux_tasks.rb.
  6. Добавить задачи logux:actions и logux:channels.
  7. Покрыть задачи тестами.