No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
.github Add pull request submit template Jul 5, 2018
2197 Next attemp of refactoring code Jul 12, 2018
2198 Fix all koans and styles. Jul 11, 2018
2199 Merge pull request #233 from LikaLex/2199-2 Jul 24, 2018
2203 Misspelling in Dockerfile from previous task was fixed Jul 10, 2018
2207 Merge pull request #265 from svintbel/2207_2 Jul 28, 2018
2209/0 Create 1.rb Jul 10, 2018
2211 2211-2 Jul 24, 2018
2213/0 completed homework 0 Jul 10, 2018
2214 Removed requires because Gemfile appeared Jul 24, 2018
2216 2216-2 (#219) Jul 25, 2018
2217 Last check for reek/rubocop_v_0.54 and .reek file changes Jul 11, 2018
2218 add first task Jul 11, 2018
2220/0 2220 - 0 Jul 10, 2018
2223 Merge pull request #249 from VDmitryO/2223-2 Jul 26, 2018
2226 Refactoring rapper class Jul 25, 2018
2227 Update RapperAnalyzer.rb Jul 25, 2018
2230 Rename project folder Aug 2, 2018
2232 Split CommentsParser on 2 classes Jul 30, 2018
2241 Fix koans Jul 11, 2018
2249 2249-2 (#263) Jul 24, 2018
2253/0 Create 1.rb Jul 10, 2018
2256/0 Create a .rb file with text Jul 10, 2018
2260/0 add file 1.rb Jul 10, 2018
2263 Merge pull request #238 from ARtoriouSs/b2 Jul 24, 2018
2264 Change RappersList and TopBadWordsPrinter classes, fix small inconsis… Jul 23, 2018
2269 Task #2 - OOP usage fixed (remastered in MVCstyle).Fixed comment/newl… Jul 24, 2018
2283 2283-1 Jul 13, 2018
2293/0 Add 1.rb file Jul 10, 2018
2294 Respond to code review Jul 10, 2018
2297/0 Add file 1.rb Jul 10, 2018
2309 fix all koans Jul 11, 2018
2312 2312-2 (#232) Jul 25, 2018
2331 Add some tests Jul 19, 2018
2333 Merge pull request #231 from leshkacore/hw2 Jul 26, 2018
2336/0 Add 1.rb Jul 10, 2018
2345 Add homework 2345 for task 1 Jul 12, 2018
2346 new commit Jul 13, 2018
2349 add fix koans Jul 13, 2018
2355 Enable Layout/CaseIndentation Jul 12, 2018
2358 Add task #1 by 2358 Jul 11, 2018
2363 Create config. Fixed helpers files. Jul 27, 2018
2364 Add config.example Jul 27, 2018
2370 Fix all coans Jul 12, 2018
2371 author.rb - remove name equality check to similar_items_searche.rb. f… Jul 25, 2018
2372/0 Add new line Jul 10, 2018
2377 Fix Jul 25, 2018
2379/0 implement homework 0 Jul 10, 2018
2386 Merge pull request #237 from Otmorozok76/homework-2 Jul 26, 2018
2391 Delete submodule Jul 11, 2018
2396 Respond to code review Jul 23, 2018
2406 Fix artist reader Jul 24, 2018
2407 Merge pull request #260 from Pharethi/2407-2 Jul 26, 2018
2420 delete output class and create all_information_about_battler method i… Jul 26, 2018
.enabled.yml Change rubocop.yml and add reek Jul 10, 2018
.gitignore Implement level 1 of task 2. Jul 15, 2018
.gitmodules Delete submodule Jul 11, 2018
.hound.yml Fix hound.yml for new rubocop.yml path Jul 10, 2018
.reek Change rubocop.yml and add reek Jul 10, 2018
.rubocop.yml Implement level 1 of task 2. Jul 15, 2018
README.md Астрологи предсказали что 28 число это неблагоприятный день для дедла… Jul 26, 2018

README.md

Rubizza Survival Camp: Summer 2018

Как сдавать задания

Алгоритм примерно следующий:

  • Для сдачи всех заданий каждому нужно будет форкнуть этот репозиторий.
  • Каждый курсант ( он же участник курсов ) должен в этом репозитории создать папку со своим личным номером ( например 2522 ).
  • Каждое задание должно выполняться в отдельной ветке и для него необходимо создать отдельную папку, которая будет отражать номер задания. ( например для задания 0 - 2522/0/ )
  • После завершения задания - нужно выслать pull request ( он же далее PR ) в master-ветку этого репозитория. Формат названия PR должен быть персональный номер - номер задания ( например 2522 - 0 ). Обратите внимание что при отправки нужно заполнить все поля в шаблоне.
  • PR после отправки всегда будет проверять шальная собака на соответствие человеческим стилям. Если стиль кода ей не понравится - она будет ругаться.
  • Только если собака довольна - на вашу задачу будет назначен ментор, который уже будет просматривать код и принимать задание.
  • После того как ментор решил что задание выполнено полностью и ему все нравится - он зальет ваше задание в основной репозиторий. Именно этот момент и будет считаться временем сдачи задания.

Задание 0

В рамках первого задания всем нужно было настроить окружение ( *nix, rvm/rbenv, ruby ) и поднять на своей локальной машине redmine. Так как к моменту написания этого задания большая часть бойцов уже с ним справилась, то более подробно описывать его не имеет смысла. Напомню только что самые дерзкие ( мы всех взяли на карандаш ) обещали также обернуть redmine в docker, за что получат дополнительную звездочку.

P.S. Мы проверили, звездочки на складе закончились, будем выдавать банки тушенки.

Как доказать что я справился

Для того, чтобы сдать данное задание необходимо:

  • По алгоритму выше нужно пройти все шаги и сделать настройку.
  • В нужной папке и ветке нужно создать файлик 1.rb с кодом в нем puts 'Chunky bacon' ( лайк и подписка если понял о чем я )
  • Этот файлик нужно прикрепить и отправить по той же инструкции выше.
  • В видео, которое необходимо припкрепить к PR ( он же pull request ) нужно отразить что у тебя есть на машине ruby, rvm/rbenv, и работает локально redmine.
  • Если делал задачу со звездочкой - то в папку помимо 1.rb нужно положить все, что касается настройки докеров. И также это отразить на видео.

Дедлайн

2018-07-07 18:00:00 UTC+3

Задание 1

После первого задания вы получили работающую систему, и настало время ей воспользоваться! Чтобы показать все прелести языка Ruby вам придется пройти через сложный путь к просветлению. На выходе вы получите незабываемые впечатление и навыки написания кода согласно тому, как все привыкли его видеть! Запомните, что каждое следующее задание должно строго следовать букве закона и быть на стиле!

  1. Форкаем репозиторий.
  2. Фиксим все коэны. (см. инструкцию к репу ruby_koans)
  3. ...
  4. Profit!

Как доказать, что я справился

  • Все решения ( вместе с кодом решения ) должны быть залиты в папку, которая отражает номер текущего задания.
  • Видео, прикрепленное к PR, обязательно должно показывать, что все koans пройдены.

Дедлайн

2018-07-11 18:00:00 UTC+3

Задание 2

Ни для кого не будет сюрпризом тот факт, что за последние несколько лет рэп-баттлы прочно вошли в нашу культуру. И локомотивом этой субкультуры в наше время точно является питерская площадка VERSUS. Если вы хоть немного в теме - то это задание вам точно понравится. А если нет - то пора уже быть в теме.

Общее описание

В рамках данного задания мы будем анализировать тексты различных участников рэп-баттлов ( преимущественно VERSUS ) на предмет различных интересных факторов. Само приложение для анализа должно представлять собой консольную утилиту, которая принимает в себя различные аргументы. В зависимости от них поведение приложения меняется и выдает нам различные интересные факторы. Данные для анализа необходимо скачать по ссылке.Для выполнения всех уровней можно использовать любые гемы или API.

Уровень 1

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

Параметр --top-bad-words, который передается в программу, показывает максимальное количество самых нецензурных участников, которое следует вывести на экран.

Дополнительно необходимо будет посчитать общее количество баттлов для каждого участника и среднее количество всех слов в раунде.

Серьезно отнеситесь к форматированию данных. На данном уровне задания оно должно полностью соответствовать примеру ниже.

Пример работы программы.

ruby versus.rb --top-bad-words=3

Гнойный    | 12 батлов | 127 нецензурных слов | 10.58 слова на баттл | 232 слова в раунде |
Oxxxymiron | 7 батлов  | 24 нецензурных слова | 3.42 слова на баттл  | 317 слов в раунде  |
Галат      | 3 батла   | 2 нецензурных слов   | 0.66 слова на баттл  | 207 слов в раунде  |

Уровень 2

На втором уровне сложности мы будем искать для определнного участника его любимые слова в батлах. Имя участника должно передавать как параметр --name. Чтобы ограничить вывод стоит использовать параметр --top-words. По дефолту необходимо выводить 30 слов.

Не забудьте исключить разные местоимения и прочие мелочи.

Пример работы программы.


ruby versus.rb --top-words=20 --name=Толик

Рэпер Толик не известен мне. Зато мне известны:
Гнойный
Oxxxymiron
Галат
...

ruby versus.rb --top-words=5 --name=Oxxymiron

Факты - 5 раз
Папочку - 2 раза
Микрофоны - 1 раз
Птички - 1 раз
Пожертвую - 1 раз

Уровень 3

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

Пример работы программы.

ruby versus.rb --plagiat

Как доказать, что я справился

  • Все решения ( вместе с кодом решения ) должны быть залиты в папку, которая отражает номер текущего задания.
  • Видео, прикрепленное к PR
  • Уровни должны быть выполнены один за другим. Невозможно сдать уровень 2 не сдав уровень 1.

Дедлайн

2018-07-16 09:00:00 UTC+3 ( Потому что все уходят раньше Толика, значит всем легко и все понятно )

Задание 3

Каждый белорус, кто хоть немного сидит в интернете, знает портал под названием onliner.by. Этот портал славится не только свои каталогом и форумом, но и отличными статьями на разнообразные темы. Однако в рамках нашего задания нам интересны не сами статьи, а комментарии под ними. Именно там часто отражена квинтэссенция народной реакции на различные события. Однако, по мнению вашего покорного слуги, особенно неравнодушна публика к разным статьям про белорусское IT-сообщество. Так это или нет мы попытаемся узнать с вами в рамках этого задания.

Функциональные требования

В рамках данной домашки вам необходимо будет разработать веб-приложение. В приложении должна быть возможность:

  • Добавить ссылку на статью для анализа.
  • Просмотреть таблицу со статьями, которые были добавлены для анализа.
  • Для каждой статьи видеть ее рейтинг. Рейтинг должен быть выставлен в диапазоне от -100 до 100.
  • Для каждой статьи иметь возможность перейти на страницу с проанализированными комментариями. На этой странице видеть таблицу комментариев, где для каждого проставлен рейтингом ( от -100 до 100 )

Технические требования

  • Для веб-приложения вы должны использовать микро-фреймворк sinatra
  • Хранить данные необходимо в базе данных redis. Для более приятной интеграции лучше использовать гем ohm
  • Для получения списка комментариев для статьи - необходимо написать парсер. Для этого нужно использовать гемы mechanize или capybara.
  • Для анализа рейтинга комментария - необходимо использовать API от Azure. Более подробно по ссылке.
  • Для анализа рейтинга статьи лучше брать 50 самых популярных комментариев, а не пытаться анализировать все.

Как доказать, что я справился

  • Все решения ( вместе с кодом решения ) должны быть залиты в папку, которая отражает номер текущего задания.
  • Видео, прикрепленное к PR, обязательно должно показывать, что можно добавить страницу, увидеть рейтинг предыдущих статей, просмотреть комментарии и рейтинги по ним.

Дедлайн

2018-07-27 18:00:00 UTC+3