
Roman
12.12.2017
06:59:34
но в своих личных проектах я часто пишу как v2 почти

kolas
12.12.2017
07:02:55
ты в личных проектах еще на коллбэках всю логику строишь? ?

Alex
12.12.2017
07:04:37

Roman
12.12.2017
07:06:25

Google

Dima
12.12.2017
07:06:56

Roman
12.12.2017
07:07:13
ну можно конечно это считать колбеками. но это простой yield

Slava
12.12.2017
07:16:50
@lbvf50 @thktomska полностью согласен, вторая версия не будет проблемой для прочтения, если читает рубист

Alex
12.12.2017
07:17:19

Dima
12.12.2017
07:18:00
в общем одниаково.
по количеству + и -.


Alex
12.12.2017
07:23:23
я думаю даже опытный задаться вопрос wtf\what for?
а зачем кому-либо задаваться таким вопросом? зачем тратить на это психические силы своих коллег?
я, если что, написал сначала 2ю версию - это называется codewars головного мозга - так что будьте осторожны со своим кланом) codewars прививает плохие привычки писать нечитаемые однострочники, будто бы это круто в продакшене


Roman
12.12.2017
07:32:09
однострочники идите на перле пишите :)

kolas
12.12.2017
07:32:26
в пхп же есть какая-то тулза чтобы шифровать свой код

Google

kolas
12.12.2017
07:32:35
чтоб никто не прочитал )

Nikolay
12.12.2017
07:35:42
> я думаю даже опытный задаться вопрос wtf\what for?
согласен, возникает сразу вопрос “и в чем бенефит?”, вместо того что бы пройти дальше
вообщем сувать бездумно метамагию - это привычки чуть окрепшего джуниора) с мотивацией “because i can”…я думаю все этим переболели\переболеют когда-то)

Anton
12.12.2017
07:35:45
Просто, понятно и явно

Nikolay
12.12.2017
07:36:41

Anton
12.12.2017
07:37:18
Ну да

Nikolay
12.12.2017
07:37:20
в какой-то момент полученные знания давят на мозг и ты юзаешь их где не попадя

Anton
12.12.2017
07:37:35
Правило простое, уменьшай конгнетивную нагрузку и все

Dima
12.12.2017
07:48:39
это сложно для формализации

Anton
12.12.2017
07:50:45

Dima
12.12.2017
07:51:15

Anton
12.12.2017
07:51:56
Вы не гончие и одинокие волки, вы все работаете в команде с кем-то, уважайте окружающих и делайте код на столько простым, что бы его понял даже пре Джуниор

Dima
12.12.2017
07:52:14

Alex
12.12.2017
07:52:47

Dima
12.12.2017
07:54:27
Это значит, что в первом случае у тебя линейный флоу в котором ты просто берёшь результат и вызываешь его у метода а потом возвращаешь что-то явно.
Во втором - тебе надо помнить что делает tap, &, method + понимать, что возвращаемый релультат будет тем, что perform вернёт. Это все лишняя умственная нагрузка, особенно, когда работаешь в команде, потому что другим разбираться в коде тоже нужно
это с какой позиции п осмотреть. можно и с другой стороны зайти
1. надо перемещаться со строки на строку, запоминать переменные
2. просто идем вперед, сохраняя только взвращенное значение
—-
Надо помнить что делает tap, &, method + - ну дак это называется знать язык. Везде золотая середина есть.

Anton
12.12.2017
07:55:25
По поводу знать язык:
Тебе нужно написать наиболее поддерживаемый вариант, который будет лёгок для всей команды. Так то можно и callcc в коде выебываться, это же тоже руби, знай его

Google

Dima
12.12.2017
07:56:50

Alex
12.12.2017
07:56:52

Anton
12.12.2017
07:56:54
Или юзать везде флипфлоп

Vasiliy
12.12.2017
07:57:42
парни дароу

Dima
12.12.2017
07:58:20

Vasiliy
12.12.2017
07:58:34
я чёт не могу в сортировку, у меня есть юзер, у юзера мессаги, мне надо получить отсортированных пользователей по дате последней мессаги, как разрулить?

Anton
12.12.2017
07:59:15
Я выразил своё мнение, если бы у меня был бы выбор - я бы оставил первый вариант тли заставил бы переделать на первый вариант на ревью

Vasiliy
12.12.2017
07:59:28
рельса, ар, вот это вот всё

pny
12.12.2017
08:00:49

Dima
12.12.2017
08:00:57

Alex
12.12.2017
08:02:03

rekero
12.12.2017
08:06:25
но это долго будет
на больших базах
добавь поле и туда сохраняй дату последнего сообщения

Alexey
12.12.2017
08:07:17
Ради сортировки? Как по мне - перебор)

pny
12.12.2017
08:09:27
Не перебор, а явный саботаж

rekero
12.12.2017
08:09:35
ну такой запрос может реально больше 10 секунд выполняться

Alexey
12.12.2017
08:09:59
Можно добавить отсортированный индекс, потеряем только во времени создания/обновления

Google

Dima
12.12.2017
08:11:12

Alexey
12.12.2017
08:16:51

Dima
12.12.2017
08:17:27


Максим
12.12.2017
08:18:14
default: &default
adapter: mysql2
encoding: utf8
pool: 5
username: root
password:
socket: /tmp/mysql.sock
development:
<<: *default
database: database_development
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: database_test
# As with config/secrets.yml, you never want to store sensitive information,
# like your database password, in your source code. If your source code is
# ever seen by anyone, they now have access to your database.
#
# Instead, provide the password as a unix environment variable when you boot
# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database
# for a full rundown on how to provide these environment variables in a
# production deployment.
#
# On Heroku and other platform providers, you may have a full connection URL
# available as an environment variable. For example:
#
# DATABASE_URL="mysql2://myuser:mypass@localhost/somedatabase"
#
# You can use this database configuration with:
#
# production:
# url: <%= ENV['DATABASE_URL'] %>
#
production:
<<: *default
database: database_production
username: username
password: password
socket: /var/run/mysqld/mysqld.sock
значит ли это что дб лежит на локалхосте?


Dima
12.12.2017
08:20:24

rekero
12.12.2017
08:22:47


Максим
12.12.2017
08:22:56
ага
понял
спасибо

Anton
12.12.2017
08:23:39

Dima
12.12.2017
08:23:55

Anton
12.12.2017
08:24:30
А как же первое правило колбэка, мутируй все подряд

Dima
12.12.2017
08:24:34

Alex
12.12.2017
08:25:16

Vasiliy
12.12.2017
08:28:18
я думал touch заюзать на родительской модели при добавлении сообщения, но чёт тоже думаю перебор

Alex
12.12.2017
08:34:03

Максим
12.12.2017
08:35:01
читаете эту неделю секретов бекенда в твитере?
там чел ооп на голову на этой неделе переворачивает
и я вот думаю норм ли тему загоняет али говно какоет

Google

pny
12.12.2017
08:36:06
там лимит всё равно, пагинация
Тебе вроде как придется отсортировать все сообщения по дате создания с группировкой по user is в любом случае, так что это будет затратно.

Alexey
12.12.2017
08:36:53
@Qew7777 поделись чтоли сабжем, а то я не в курсе)
Только если там не рассуждения в стиле ООП мертво и функциональщина маст хев, устал я от этих споров. :D

rekero
12.12.2017
08:38:04

Alexander
12.12.2017
08:38:32

rekero
12.12.2017
08:39:10
https://twitter.com/backendsecret/status/940170080234754048
первая ветка

Alexey
12.12.2017
08:40:37
Я скучаю по твиттеру в 140 символов ?

Alexander
12.12.2017
08:46:01
Хех мда

Максим
12.12.2017
08:49:46
ну я так понял что он парадигмы фп типа иммутабельности объектов приписывает ооп
чего я как раз не оч понимаю
типа нулл - плохо могу понять
гетеры сетеры - плохо почти могу понять но не верю что без них было бы удобнее
а вот копировать объекты вместо изменений понять не могу

Alex
12.12.2017
08:51:49

Максим
12.12.2017
08:52:18
а он вроде достаточно популярный деятель там книги пишет и тд
вот и думаю

Anton
12.12.2017
08:53:50

Максим
12.12.2017
08:54:03
ну типа блин