
Alex
01.11.2016
18:19:45
по количеству кривых гемов можно вообще трактаты писать
Очень часто приходится в сорсы лезть чтобы понять че ему не нравится.

I
01.11.2016
18:20:27

Rafkat
01.11.2016
18:21:06
gem uninstall rails

Google

Alex
01.11.2016
18:21:21
Я вообще ожидал что вопрос именно по стандартному стеку рельс
потому что кривые гемы это вообще отдельная тема.
rails-assets вон прикольный. Нужно тебе задеплоиться - а они лежат

I
01.11.2016
18:22:12

Michael
01.11.2016
18:22:47

Alex
01.11.2016
18:23:08
собственно докажи обратное.
Единственное как выше сказали кешировать все это надо в памяти.

I
01.11.2016
18:23:27
Полей? Два поля, ключ-значение

Nick
01.11.2016
18:23:42
^this
Если есть редиска, то там можешь хранить

Michael
01.11.2016
18:24:01

Alex
01.11.2016
18:24:52
Самое веселое и бесполезное времяпровождение это допиливание легаси проекта

Google

Alex
01.11.2016
18:24:59
если ты конечно не джун

Michael
01.11.2016
18:25:39
я с рельсами познакомился пол года назад))

Alex
01.11.2016
18:26:02
полгода? и ты еще не тестируешь?

Michael
01.11.2016
18:26:42
у меня в этом проекте с coverage все впорядке
это я второй проект, тестами покрываю, что бы потом отрефакторить можно было не сломав))

Alex
01.11.2016
18:27:54
"coverage"

Michael
01.11.2016
18:28:31

Alex
01.11.2016
18:28:53
coverage это метрика, к ней нужно относиться со здоровым скептицизмом.

Michael
01.11.2016
18:29:57
ну я тестирую только модели, контроллер и acceptance

Alex
01.11.2016
18:30:30
а сервисы?
а капибарой?
а модели как тестируешь? а контроллер зачем если есть интеграционные?

Антон
01.11.2016
18:31:28

Michael
01.11.2016
18:31:34

Alex
01.11.2016
18:31:59
так я все еще не понимаю зачем тестировать контроллер если есть интеграционный тест
он более честный

Michael
01.11.2016
18:32:05

Alex
01.11.2016
18:32:08
ТЕМ БОЛЕЕ для апишки.

Alexander
01.11.2016
18:33:11

Google

Alex
01.11.2016
18:33:24
Так разница то какая? )
это почти одно и тоже, за исключением что интеграционные более честные.

Michael
01.11.2016
18:33:43

Alex
01.11.2016
18:34:10
Ну у тебя есть так сказать класс который выполняет строго одну задачу для контроллера?
и возвращает результат

Michael
01.11.2016
18:34:32
нет нету

Alex
01.11.2016
18:35:20
Т.е ты пишешь толстые контроллеры или модели?
тоже кстати прикольный вопрос для собеса (только мне нафиг уже не нужен)

Антон
01.11.2016
18:36:52
скучный вопрос :)

Michael
01.11.2016
18:36:59
у меня контроллеров на самом деле не много, очень много класов

Антон
01.11.2016
18:37:09
ну хотя таким вопросом можно выявить приверженца DHH
и сжечь сразу

Michael
01.11.2016
18:37:16
я не пишу не толстые контроллеры не толстые модели

Alex
01.11.2016
18:37:21
Физбаз тоже скучный
но у меня знакомый уверяет что быстро@уверенно отсекает нубов.

Michael
01.11.2016
18:37:42
частельно пользуюсь консернами

Alex
01.11.2016
18:37:57
Консерн не делает модель/контроллер менее толстой
он лишь выносит код в другое место.

Michael
01.11.2016
18:38:16
ну он позволяет избегать дублирования

Alex
01.11.2016
18:38:17
А дрюить не часто получается один концерн в несколько моделей.

Google

Alex
01.11.2016
18:38:20
редко.

Michael
01.11.2016
18:39:26
я много данных получаю по почте и стягиваю с других сайтов

Alex
01.11.2016
18:42:13
А как ты их по почте стягиваешь?
что юзаешь?
Тут важно мысление и опыт

Michael
01.11.2016
18:42:40
как повелось издавна, у авиакомпаний, все сообщения в не в очень то удобном для чтения формате))) кидают текстовый файлик с кучей беспорядочных символов(по другому это назвать не могу), а мне нужно все это правильно отпарсить и записать

Admin
ERROR: S client not available

Alex
01.11.2016
18:43:00
т.е ты вручную парсишь файлик каждый раз?

I
01.11.2016
18:43:07

Michael
01.11.2016
18:43:08
нет конечно))
видов сообщений очень много
только расписание рейсов чего стоит, около 10-и форматов
я не говорю уже про запросы на букинг

Alex
01.11.2016
18:45:30
Как парсер пишешь? как тестишь?

Антон
01.11.2016
18:45:34
быстрая проверка на джуна
def a(b)
if c = b
puts true
end
end
> a(1)
что вернет и почему?

Michael
01.11.2016
18:46:31
true

Антон
01.11.2016
18:46:48
нет

Michael
01.11.2016
18:47:13
тогда nil

Антон
01.11.2016
18:47:40
почему?

Google

Michael
01.11.2016
18:48:02
ну условие не выполнится и метод закончится

Антон
01.11.2016
18:48:19
почему?

Michael
01.11.2016
18:48:26
нет else

Антон
01.11.2016
18:48:55
утверждение 1) ну условие не выполнится
утверждение 2) и метод закончится
почему? почему?

Michael
01.11.2016
18:48:59
а c = b == false

I
01.11.2016
18:49:50
Ast построй и подумай

Антон
01.11.2016
18:51:14

I
01.11.2016
18:51:48
Да все равно маловероятно построение им дерева

Michael
01.11.2016
18:53:19
по условию, походу выполнится puts ну и потом вернется nil

Alex
01.11.2016
18:53:39
2.3.1 :001 > b = 3
=> 3
2.3.1 :002 > !!(c = b)
=> true
Чо тут думать то

Michael
01.11.2016
18:53:44
вообще не понимаю это безсмысленное условие

Alex
01.11.2016
18:54:30
Кстати сишники и похапэшники такие условия любят

Антон
01.11.2016
18:55:23

Michael
01.11.2016
18:58:53

Антон
01.11.2016
18:59:15
это обязательное условие, но не достаточное
ты путаешь and и &&