
Alexey
02.10.2017
15:47:08
тем более flash'а

No
02.10.2017
15:47:21
на самом деле, тут не критично, не тот кейс
можно и так, и так

Alexey
02.10.2017
15:47:29
я и говорю

Google

No
02.10.2017
15:47:31
но если глобально - на отдельной строке лучше
тогда редирект не имеет сайд эффекта, зависящего от параметров
вернее по прежнему имеет, если вглядеться глубже, но на уровне кода контроллера это будет выглядеть как отдельное действие

Anton
02.10.2017
15:54:23

No
02.10.2017
15:55:06

Alex
02.10.2017
15:55:07
session[:user] = user
There are two types of people in this world:
1) who can extrapolate from incomplete data

Alexey
02.10.2017
15:56:53
из devise:
def create
self.resource = warden.authenticate!(auth_options)
set_flash_message!(:notice, :signed_in)
sign_in(resource_name, resource)
yield resource if block_given?
respond_with resource, location: after_sign_in_path_for(resource)
end

No
02.10.2017
15:57:54
5 строк
devise в теме ))
хотя если быть дотошным - if постфиксный будет как отдельная строка считаться
на минуте 4 секундах явно туалет

Alexey
02.10.2017
16:02:51
:D

Google

Alexey
02.10.2017
16:03:56
насчет 5 строк - считаю, что не панацея, но стремление к тому, чтоб все методы были короткими улучшает читаемость кода
ужасающий кошмар ощущаешь приходя из руби в го, где в методе может быть не одна сотня строк

No
02.10.2017
16:04:40
да, я только за, но сидеть и ломать голову, куда бы вынести две строки для того, чтобы правило сработало - это писос
там тоже непривычно писать много, когда привык писать мало

Alexey
02.10.2017
16:07:41
Это мнение по поводу холивара?))

Anton
02.10.2017
16:13:22

Alex
02.10.2017
16:17:48
Без коллбеков уже ххх дней

Anton
02.10.2017
16:18:16
Все так
Жизнь прекрасна без этого

Oleg
02.10.2017
16:25:35
"Сначла друзья пригласили меня на конференцию, где рассказывали про то что можно передавать функции через параметры. Я решил попробовать, ведь что в этом такого. Сначала я просто баловался этим когда было время и возможности. Но потом, сам того не ожидая я подсел на это. А потом я понял что у меня калбеки. И я уже не мог жить без этого, каждый день я писал всё больше и больше калбеков, потом начал писать асинхронный код и уже не мог остановится. Деревья калбеков, промисы, потом я начал принимать генераторы. А в конце перешел на асунки и авейты. И тут я понял что я полностью подсел на JS и асинхронный код."

No
02.10.2017
16:27:25
Выбери героин, выбери кокаин, выбери бухло - выбери жизнь (с) Коллбэкспоттинг

Sergey
02.10.2017
16:39:04

Oleg
02.10.2017
17:06:09
Загадочный код дня:
# Get/Set magic
@@iv = instance_variables
class << self
attr_accessor(*@@iv.map {|var| var.to_s[1..-1].to_sym})
end

Alex
02.10.2017
17:07:34
пиздец.

Oleg
02.10.2017
17:09:44
Забавно, но я понял зачем он нужен...

Anton
02.10.2017
17:10:06
Ха, крутой кол
Кол
Код

Alex
02.10.2017
17:10:18
кол для тех кто будет с этим возиться.

Google

Alex
02.10.2017
17:10:26
А для чего он? он просто без контекста подан.

Oleg
02.10.2017
17:10:37
В тело класса вставляется

Alex
02.10.2017
17:10:58
кэп.
Откуда берутся instance variables если их нет?

Oleg
02.10.2017
17:12:14
require 'active_support/core_ext/numeric/time'
class GlobalState
@shutdown = false
# Dump
@dump_period = 6.hours
@dump_check_delay = 10.seconds
@cold_dump_period = 1.day
@dump_count_fresh = 0 # TODO
@dump_count_olden = 0 # TODO
@dump_count_epoch = 0 # TODO
@in_dump_process = false
@in_cold_dump_process = false
# Get/Set magic
@@iv = instance_variables
class << self
attr_accessor(*@@iv.map {|var| var.to_s[1..-1].to_sym})
end
end
Становится возможным вызвать GlobalState.dump_period и тп
?

Alex
02.10.2017
17:12:42
мда
пизздец.

Oleg
02.10.2017
17:13:20
Эдакий конфиг-файл на движке классов Ruby

Nikita
02.10.2017
17:17:21
просто чувак не справился с пробрасыванием переменной в аргументы attr_accessor , поэтому заюзал @@

Oleg
02.10.2017
17:22:21
Интересно, какой самый каноничный вариант такое переписать

Alex
02.10.2017
17:25:25
хотя оно легаси

Oleg
02.10.2017
17:25:55
А если без new?

Alex
02.10.2017
17:26:19

Oleg
02.10.2017
17:27:43
Без рельсов так нельзя, attr_accessor_with_default не работает

Alex
02.10.2017
17:28:13
> смотря что считать каноничным

Oleg
02.10.2017
17:28:30
Согласен

Google

Alex
02.10.2017
17:29:47
method_missing :D

Nikita
02.10.2017
17:30:56
singleton_class.send(:attr_accessor, *instance_variables.map { |var| var.to_s[1..-1] })

Oleg
02.10.2017
17:32:12

Lupsick
02.10.2017
17:32:45
лучше ж dry-container заюзать например
или там dry-config был

Oleg
02.10.2017
17:33:28
Ну тут про не меняя апи

Lupsick
02.10.2017
17:34:59
типа легко читается
даже сам так делал

Alex
02.10.2017
17:35:57
а потом я поработал с кодом где это реально юзали, это быстро превращается в зашквар

Lupsick
02.10.2017
17:38:24
ну мб

Anton
02.10.2017
17:43:47

Alex
02.10.2017
17:44:11

Nikita
02.10.2017
17:44:40

Anton
02.10.2017
17:45:26

Lupsick
02.10.2017
17:49:22
конвенции в команде очень важная хуйня
потому что никто не знает как программировать правильно
конвенция – это как раз культура

Anton
02.10.2017
17:50:11
Поэтому мне перестали нравится многие конторы. Тупо потому что вижу, что может быть норм

Google

Anton
02.10.2017
17:50:38
И важно не придти и сказать, что ты прав. А предложить и обсудить

Lupsick
02.10.2017
17:51:15
+
кстати интересно было бы узнать сколько в чяте тимлидов или vp of engineering

No
02.10.2017
17:53:28
Больше не хочу)

Lupsick
02.10.2017
17:53:47

Anton
02.10.2017
17:57:59

Lupsick
02.10.2017
17:58:12

Anton
02.10.2017
17:58:24
А смысл? Я в другое хочу
Да и код писать люблю

Lupsick
02.10.2017
17:58:38
ну и я код пишу так-то

Nikita
02.10.2017
18:01:12
мммм, в другое.... а это куда?

Anton
02.10.2017
18:01:13
Не в социальные стороны работы. Социального хватает и вне её
Хотя даже сейчас около 30-40% времени трачу на всякие митинги и обсуждения

Lupsick
02.10.2017
18:01:45
остальным обычно похуй

Anton
02.10.2017
18:03:46

Lupsick
02.10.2017
18:04:18
а что тогда делает тимлид?