Size: a a a

2021 January 18

A

Alexander in ctodailychat
господа, а посоветуйте удобный менеджер паролей для команд.
задача в том, чтобы можно было пользоваться всей компанией, при этом в разных отделах есть разные группы сервисов (например, отдел продаж хранит пароли от своей crm, телефонии, директов и метрик всяких и т п), разработчики от своих сервисов, виртуалок и тп.
при этом чтобы в каждой группе можно было назначать старшего, который сам менеджерит доступы для своего отдела и может пошарить их для другого отдела (группы) если необходимо.
и при этом желательно, чтобы обычный юзер (не разработчик) мог нормально этим пользоваться и с ума не сошел.
есть вообще что-то такое?
источник

L

Lev in ctodailychat
Alexander
господа, а посоветуйте удобный менеджер паролей для команд.
задача в том, чтобы можно было пользоваться всей компанией, при этом в разных отделах есть разные группы сервисов (например, отдел продаж хранит пароли от своей crm, телефонии, директов и метрик всяких и т п), разработчики от своих сервисов, виртуалок и тп.
при этом чтобы в каждой группе можно было назначать старшего, который сам менеджерит доступы для своего отдела и может пошарить их для другого отдела (группы) если необходимо.
и при этом желательно, чтобы обычный юзер (не разработчик) мог нормально этим пользоваться и с ума не сошел.
есть вообще что-то такое?
passwork
источник

OA

Oleh Aloshkin in ctodailychat
Alexander
господа, а посоветуйте удобный менеджер паролей для команд.
задача в том, чтобы можно было пользоваться всей компанией, при этом в разных отделах есть разные группы сервисов (например, отдел продаж хранит пароли от своей crm, телефонии, директов и метрик всяких и т п), разработчики от своих сервисов, виртуалок и тп.
при этом чтобы в каждой группе можно было назначать старшего, который сам менеджерит доступы для своего отдела и может пошарить их для другого отдела (группы) если необходимо.
и при этом желательно, чтобы обычный юзер (не разработчик) мог нормально этим пользоваться и с ума не сошел.
есть вообще что-то такое?
passbolt еще есть
источник

KS

Kirill Sulim in ctodailychat
Aleksei Chernov
а третьи умеют переключаться между этими режимами в зависимости от текущих потребностей бизнеса
Я скорее думаю, что у каждого программиста есть некоторый диапазон, в котором он может смещать приоритеты. Но это нельзя считать переключением между "херак-херак и в продакшн" и "инфраструктура как в google". Скорее это небольшая смена приоритетов на уровне "в этом месте делаем хак и заводим тикет на разобраться потом" против "сделаем сразу нормально". Не надо считать, что есть человек, который может сделать quick and dirty код на 500 строк, а потом внезапно проработает энтерпрайз-архитектуру. Что-то одно будет так себе.
источник

AK

Alexander Kupreev in ctodailychat
Igor V
По-моему речь шла о другом. О том, что не нужно специально усложнять.

Многие бойцы в попытках написать типа умный код усложняют код и как следствие усложняют систему на ровном месте. Они неплохо умеют писать код, но пока еще не умеют строить системы, которые всегда работают.

Типичный пример такого типа умного кода -  это когда нужно забрать файл с S3/FTP и вместо того, чтобы явно принять путь до файла, эти ребята переносят бардак из своей головы в код и реализуют неявную логику генерации путей до файла аля /opt/output/" + today.strftime(‘%Y%m%d’). Happy debugging, testing and maintenance.

Треды, локи и блокирующие очереди там где можно обойтись новым процессом. Типа умная обработка ошибок, когда со своей стороны мы ничего уже не можем сделать вместо того чтобы громко упасть. Кафки, кубернетисы, микросервисы, микрофронденты и другие слова на К и М это скорее всего усложнения там, где это совершенно не нужно.

Надежная система собирается как конструктор и базируется на простых и скучных компонентах, а не наоборот.
Как научиться делать просто, но не чрезмерно просто?
источник

N

Nikita in ctodailychat
Slava Savitskiy
нормальные программисты могут переключаться между двумя режимами
это утверждение не противоречит тексту, а скорее дополняет )
источник

V

Vladyslav in ctodailychat
Alexander
господа, а посоветуйте удобный менеджер паролей для команд.
задача в том, чтобы можно было пользоваться всей компанией, при этом в разных отделах есть разные группы сервисов (например, отдел продаж хранит пароли от своей crm, телефонии, директов и метрик всяких и т п), разработчики от своих сервисов, виртуалок и тп.
при этом чтобы в каждой группе можно было назначать старшего, который сам менеджерит доступы для своего отдела и может пошарить их для другого отдела (группы) если необходимо.
и при этом желательно, чтобы обычный юзер (не разработчик) мог нормально этим пользоваться и с ума не сошел.
есть вообще что-то такое?
1pass 1love


еще были ластпасс и битварден
источник

V

Vladyslav in ctodailychat
но нравиться 1п
источник

A

Andrey in ctodailychat
Igor V
По-моему речь шла о другом. О том, что не нужно специально усложнять.

Многие бойцы в попытках написать типа умный код усложняют код и как следствие усложняют систему на ровном месте. Они неплохо умеют писать код, но пока еще не умеют строить системы, которые всегда работают.

Типичный пример такого типа умного кода -  это когда нужно забрать файл с S3/FTP и вместо того, чтобы явно принять путь до файла, эти ребята переносят бардак из своей головы в код и реализуют неявную логику генерации путей до файла аля /opt/output/" + today.strftime(‘%Y%m%d’). Happy debugging, testing and maintenance.

Треды, локи и блокирующие очереди там где можно обойтись новым процессом. Типа умная обработка ошибок, когда со своей стороны мы ничего уже не можем сделать вместо того чтобы громко упасть. Кафки, кубернетисы, микросервисы, микрофронденты и другие слова на К и М это скорее всего усложнения там, где это совершенно не нужно.

Надежная система собирается как конструктор и базируется на простых и скучных компонентах, а не наоборот.
TL DR: KISS
источник

A

Artur in ctodailychat
Kirill Sulim
Я скорее думаю, что у каждого программиста есть некоторый диапазон, в котором он может смещать приоритеты. Но это нельзя считать переключением между "херак-херак и в продакшн" и "инфраструктура как в google". Скорее это небольшая смена приоритетов на уровне "в этом месте делаем хак и заводим тикет на разобраться потом" против "сделаем сразу нормально". Не надо считать, что есть человек, который может сделать quick and dirty код на 500 строк, а потом внезапно проработает энтерпрайз-архитектуру. Что-то одно будет так себе.
quick and dirty код будет так себе?
источник

KS

Kirill Sulim in ctodailychat
Artur
quick and dirty код будет так себе?
Недостаточно quick
источник

A

Artur in ctodailychat
Kirill Sulim
Недостаточно quick
что ж, спасибо за ваше мнение
источник

U

UsernameAK in ctodailychat
Kirill Sulim
Я скорее думаю, что у каждого программиста есть некоторый диапазон, в котором он может смещать приоритеты. Но это нельзя считать переключением между "херак-херак и в продакшн" и "инфраструктура как в google". Скорее это небольшая смена приоритетов на уровне "в этом месте делаем хак и заводим тикет на разобраться потом" против "сделаем сразу нормально". Не надо считать, что есть человек, который может сделать quick and dirty код на 500 строк, а потом внезапно проработает энтерпрайз-архитектуру. Что-то одно будет так себе.
а потом куча todo в коде
источник

U

UsernameAK in ctodailychat
Kirill Sulim
Я скорее думаю, что у каждого программиста есть некоторый диапазон, в котором он может смещать приоритеты. Но это нельзя считать переключением между "херак-херак и в продакшн" и "инфраструктура как в google". Скорее это небольшая смена приоритетов на уровне "в этом месте делаем хак и заводим тикет на разобраться потом" против "сделаем сразу нормально". Не надо считать, что есть человек, который может сделать quick and dirty код на 500 строк, а потом внезапно проработает энтерпрайз-архитектуру. Что-то одно будет так себе.
а радикальный вариант quick and dirty программеров это челики из демосцены
источник

KS

Kirill Sulim in ctodailychat
UsernameAK
а радикальный вариант quick and dirty программеров это челики из демосцены
Нет. Это не так.
источник

U

UsernameAK in ctodailychat
Kirill Sulim
Нет. Это не так.
почему же?
источник

KS

Kirill Sulim in ctodailychat
UsernameAK
а радикальный вариант quick and dirty программеров это челики из демосцены
Демосцена имеет неочевидный код не потому что quick, а потому что есть множество ограничений, и в итоге приходится идти на компромиссы. Переиспользовать какие-то участки кода, упаковывать данные итп.
источник

U

UsernameAK in ctodailychat
Kirill Sulim
Демосцена имеет неочевидный код не потому что quick, а потому что есть множество ограничений, и в итоге приходится идти на компромиссы. Переиспользовать какие-то участки кода, упаковывать данные итп.
но начальная реализация там обычно как раз qd)
источник

KS

Kirill Sulim in ctodailychat
UsernameAK
но начальная реализация там обычно как раз qd)
Я сужу по итоговому результату
источник

D

Denys in ctodailychat
https://t.me/ctodaily/1233

Спасибо, @samatg за пост!

Кажется, ссылку на Бакунова отправлял я, потому утверджение про советские газеты и использование головы принял как личное обращение. :)

Что у нас есть на текущий момент.

Кроме [обработки исключения](https://github.com/signalapp/Signal-Android/commit/c95f0fce6ee3b78ff82fde865b2ee49288e1303f#diff-160146dbaa14fdad2763ce9cbc0495fa58af07625b6a6e102c5c419fb8103693R130) ServerRejectedException (не повторять запрос, если сервер сказал, что ему тяжело) во множестве участков кода, после падения также было добавлено:

- Возможность [контроля максимального back-off](https://github.com/signalapp/Signal-Android/commit/93e9dd6425b22db13baaf7e7f780a93bda0a457e#diff-d10b2f5f1993c59be87d4bb45d89dcf84eade9b88777286f3beac1ec81282cd1R71) интервала с сервера. Раньше это было [30 секунд!](https://github.com/signalapp/Signal-Android/commit/93e9dd6425b22db13baaf7e7f780a93bda0a457e#diff-bd141820aea6050a28f07d92c3a8008fc18a810202c5e5c65968487ea979c5b3L343) (и 2 часа для сценария регистрации).

- Возможность удалённо отключать [автоматический повтор запросов](https://github.com/signalapp/Signal-Android/commit/05149503333e94bf5ac958f35ea3cacc4a093bd9#diff-d10b2f5f1993c59be87d4bb45d89dcf84eade9b88777286f3beac1ec81282cd1R101).

- Исправление того, что некоторые сетевые задачи [не использовали общую очередь](https://github.com/signalapp/Signal-Android/commit/3e43963f674b2e735ae060ecf0739881aeb4acbe#diff-71b63432150fdbdbbc56620a00ef07afecbcf0148f3af6c333e1951b8efe3a92R46).

Кроме того:

- [сторонний разработчик](https://github.com/signalapp/Signal-Android/commit/c95f0fce6ee3b78ff82fde865b2ee49288e1303f#r46037577) пишет, что у него в логах полно 503их ошибок, которые клиент обработает как таковые, что вынуждают повторять запрос.

- В июле аудитория Signal была около 30 миллионов человек. Сколько из них пользовались мессенджером активно (при наличии других более удобных альтернатив) - это вопрос. Например, очень-очень давно я поставил Signal просто посмотреть и удалил. Попадаю ли я (и пользователи их этой когорты) в эти 30 млн? Подозреваю, что да. Когда пошла недавняя шумиха, я тоже поставил Signal абы посмотреть что у них изменилось (и из стадного инстинкта, конечно же). Есть ли ещё люди, которые повели себя так же? Вероятно.

- В декабре количество регистраций в Signal пробило 50 млн. Я не смог найти статистику по устройствах, но огромный прирост в Индии почти наверняка значит бешеный прирост Android-аудитории (уже сейчас Google Play показывает 50+ млн установок).

- После бума Signal в спешном порядке увеличил количество серверов, посколько к таким нагрузкам (и такой популярности) они, похоже, готовы не были.


Итого, ждём отчёта об инциденте, но отсутствие новостей от самой компании, огромный и неожиданный для бизнеса прирост аудитории, характер и количество изменений в коде Android-клиента - все это позволяет предполагать, что гипотеза об упавших серверах, которые не смогли отбиться от лавины (повторяющихся каждых 30 секунд с миллионов устройств) запросов, кажется довольно вероятной на данный момент.
Telegram
запуск завтра
Как не уронить свой сервис под нагрузкой, на примере Signal.

Люди массово переходят из вацапа в Signal. Серверы Signal не выдержали и совсем лежали почти 14 часов, а испытывали серьезные трудности больше суток. Не лучшее время, чтобы падать :( Официальный твиттер сигнала при этом хранил молчание, будто это не модный стартап, а какая-то древняя корпорация. Жаль. Надеюсь, позже они опубликуют подробный разбор, что случилось.

Пока поделюсь, как мы однажды сами положили свои серверы и как от этого защищаемся теперь. Почти все мобильные приложения отправляют запросы на сервер, например, для оформления заказа или отправки сообщения. Важно, как себя ведут мобильные приложения, если сервер ответил с ошибкой. Очевидное решение — просто повторить запрос ещё раз, как только получил ошибку, незаметно для пользователя.

В одном проекте именно так мы и сделали. Всё было хорошо, пока серверу не стало плохо на пару минут. Если обычно на сервер приходили 100 запросов в минуту (полтора запроса в секунду), то за три минуты скопились…
источник