@proRuby

Страница 1422 из 1594
Alex
12.09.2018
08:10:55
А есть чо?
Был какой то способ это сделать, забыл уже

Один для edu другой еще как то

Damir
12.09.2018
08:11:14
Edu pack помню был

Google
Damir
12.09.2018
08:11:50
Там правда он вечный был, пока ты стьюдент)

Alex
12.09.2018
08:24:36
ну еще какой то способ был на два года

mr.Serj
12.09.2018
08:34:13
Даже не на два года

Alex
12.09.2018
08:34:40
Гитлаб? ?
о господи. "есть способ приватных репозиториев на гитхабе" надо обязательно упомянуть gitlab/bitbucket ага

я про github говорю

сам гитлабом и битбакетом пользуюсь

хотя думаю ща переехать на гитхабовские приватные.

mr.Serj
12.09.2018
08:35:13
Не пойму в чем соль гитхаба, что все так за него трусяться?

Alex
12.09.2018
08:35:45
ну кодревью у него удобный например

единая статистика по публичным/закрытым репозиториям

плюс всякие тулзы с гитхабом зачастую имеют хорошую интеграцию

типа codeclimat, travis и прочие

Google
Nikita
12.09.2018
08:37:46
типа codeclimat, travis и прочие
Ну у гитлаба свой CI имхо.

Alex
12.09.2018
08:38:02
Ну у гитлаба свой CI имхо.
ну да. Подсаживаешься на гитлаб, вендорлочишься в какой то мере )

в общем для меня в гитхабе основной плюс это то что все в одном месте

Так то я и гитлабом и битбакетом пользуюсь. Но в отличие от гитхаба они периодически лежат

а гитхаб вообще редко лежит.

у гитлаба облачная версия тормознутая.

у битбакета реже, но тоже бывает

Nikita
12.09.2018
08:39:25
Alex
12.09.2018
08:39:26
в битбакете поиск неудобно сделан

Nikita
12.09.2018
08:39:53
А, да, часто виснет. Лучше свою поднимать

Damir
12.09.2018
08:40:09
Nikita
12.09.2018
08:40:30
Ну их можно понять. Нагрузка увеличилась в разы после покупки Гитлаба)

Alex
12.09.2018
08:40:32
А, да, часто виснет. Лучше свою поднимать
а при хостинге своей начинаются новые приколы ))

Damir
12.09.2018
08:40:41
Статистика да, не спорю, для будущего работодателя «есть чо показать»

Alex
12.09.2018
08:40:47
в 2017 году тормозило знатно

Nikita
12.09.2018
08:41:06
а при хостинге своей начинаются новые приколы ))
Да вот на работе уже несколько лет юзаем. Вроде норм все. Не считая мелких багов на фронте

Damir
12.09.2018
08:43:05
Потому что как минимум нет дерева файлов, входящих в pr. с atlassian stash съехали, и это прямо сильная боль. Благо есть расширения для браузера которые хоть как-то но помогают с этим. Но «из коробки» не работает, а это пичалька https://chrome.google.com/webstore/detail/better-pull-request-for-g/nfhdjopbhlggibjlimhdbogflgmbiahc

Google
ShadoWalkeR
12.09.2018
12:39:23
Пока писал вопрос, придумал как решить свою задачу ?

Alex
12.09.2018
12:57:51
Пока писал вопрос, придумал как решить свою задачу ?
часто лучший способ найти ответ это подробно задать вопрос

ShadoWalkeR
12.09.2018
12:58:20
Господа, а есть какая то возможность переписать вот этот кусок if @redis_con res = @redis_con.hget(..) if res return res end end @mysql_con.query(..) во чтото наподобие: if @redis_con and @redis_con.hget(..) |res| return res end @mysql_con.query(..)

Я просто пилю кэш на редисе для мускуля

et
12.09.2018
13:01:15
return unless @redis_con res = @redis_con.hget(..) return res if res @mysql_con.query(..)например

ShadoWalkeR
12.09.2018
13:02:18
pure ruby

Идея в том, что сначала иду в редис. Если нет коннекта или он не вернул результат сходить в базу

Alex
12.09.2018
13:04:03
это вообще в общем то кэш

ShadoWalkeR
12.09.2018
13:04:17
Внутренний перфекционист требует схлопнуть ifы для работы в редисе)

kolas
12.09.2018
13:04:21
@redis_con&.hget() || @mysql_con&.query() немного непонятно конечно

Alex
12.09.2018
13:04:22
и под него неплохо написать простенький класс

ShadoWalkeR
12.09.2018
13:05:33
Или чтото вроде res = { return @redis_con&.hget() || @mysql_con&.query() }

Мне просто еще сам результат немного обработать надо

Alex
12.09.2018
13:07:43
почему класс не хочешь написать?

ShadoWalkeR
12.09.2018
13:08:25
Это скрипт на 160 строк кода для линуха - ООП там будет избыточным

Ну если проверки не схлопнуть - то не надо - как нибудь придушу своего перфекциониста)

Alex
12.09.2018
13:11:41
а, гавнокодинг в скриптах, знакомо )

Google
ShadoWalkeR
12.09.2018
13:12:20
q3n0x
12.09.2018
13:12:42
ShadoWalkeR
12.09.2018
13:12:50
Ага

q3n0x
12.09.2018
13:14:25
if res = @redis_con&.hget(..) return res end @mysql_con.query(..)

ShadoWalkeR
12.09.2018
13:15:23
О, благодарю

kolas
12.09.2018
13:15:24
А как результат захватить?
всмысле? присвой переменной

Dmitry
12.09.2018
13:16:21
Admin
ERROR: S client not available

q3n0x
12.09.2018
13:17:05
лучше, но возвращаемый @redis_con.hget() результат нужно как-то изменить

ShadoWalkeR
12.09.2018
13:17:07
Там целиком это вот так выглядит def getTaskAgents(taskName) # Идем в кэш на редисе if @credis and result = @credis.hget(taskName, "extens") return result.split(",") end # Если по каким либо причинам предыдущее хождение не удалось, идем в MySQL result = @mysql.query("SELECT extens FROM callManager WHERE taskID = '#{taskName}';") result.each do |row| return row["extens"].split(",") end end

ShadoWalkeR
12.09.2018
13:18:13
Это для коллег пишу - я тут в отделе один пишу код на руби - чтобы в мое отсутствие могли чтото с ним делать)

Dmitry
12.09.2018
13:18:53
def getTaskAgents(taskName)

ого

q3n0x
12.09.2018
13:19:13
camelCase?

Ilya
12.09.2018
13:19:24
лол только заметил)

ShadoWalkeR
12.09.2018
13:19:28
Мне привычней)

Ilya
12.09.2018
13:19:38
ты откуда такой пришел?

ShadoWalkeR
12.09.2018
13:19:57
Долгая история)

Google
ShadoWalkeR
12.09.2018
13:20:05
Вообще телефонист)

Ilya
12.09.2018
13:20:43
ты это... брось так писать) а то после тебя другие люди будут над твоим кодом работать

Dmitry
12.09.2018
13:20:55
Пыхаря не скрыть за руби)

Ilya
12.09.2018
13:21:40
Пыхаря не скрыть за руби)
можно убрать пыхаря из пхп, но пхп из пыхаря никогда)

ShadoWalkeR
12.09.2018
13:21:48
Вообще я на сегодня на руби написал больше кода чем на пыхе))))

Dmitry
12.09.2018
13:21:49
result.each do |row| return row["extens"].split(",") end

ShadoWalkeR
12.09.2018
13:22:24
вот это странно
В mysql2 геме так результат разбирать приходится

q3n0x
12.09.2018
13:23:01
на первом же return завершится, не?

ShadoWalkeR
12.09.2018
13:23:16
Так бы я вообще сделал def getTaskAgents(taskName) # Идем в кэш на редисе if (@credis and result = @credis.hget(taskName, "extens")) or (result = @mysql.query("SELECT extens FROM callManager WHERE taskID = '#{taskName}';")) return row["extens"].split(",") end end

Dmitry
12.09.2018
13:23:16
ну может так нужно, но тогда проще взять первый элемент

ShadoWalkeR
12.09.2018
13:24:59
на первом же return завершится, не?
В этом и идея. Либо отработался в кэш, либо сходили в базу

q3n0x
12.09.2018
13:26:10
я про return внутри each

Dmitry
12.09.2018
13:27:00
Дуров, прикрути подсветку и тёмный фон коду в телеге, пожалуйста

q3n0x
12.09.2018
13:27:10
result.each do |row| return row["extens"].split(",") end вот тут мб там так можно result.first["extens"].split(",")

ShadoWalkeR
12.09.2018
13:27:55
Надо будет поэксперементировать

Страница 1422 из 1594