mrFix
Мелькало что у кого хоть какие-то свои принципы есть, то отказываются от работы
Viktor
Viktor
Очевидно, я за 3 месяца в Амазоне ничего такого не увидел.
Viktor
То есть какие конкретно принципы мешают людям работать.
Viktor
Есть история с тем, что людям в принципе не ок работать в корпорации, кайф стартап делать. Но это не про принципы.
mrFix
В каких то источниках я встречал мнение авторов о том, что после скандалов со слежкой без ведома пользователя, якобы у сообщества разработчиков фейсбук теряет очки как работодатель из-за этого
Viktor
Viktor
Но прикол в том, что быстро подрастает новое поколение разработчиков и все забывает
Viktor
Я не думаю, что это прямо массовая история.
Viktor
У Амазона был недавно скандал с работниками на складах и профсоюзом внутренним, который пытался защищать их права, а их пытались заткнуть
Viktor
Все это быстро превратилась в скандал в сми
Viktor
Ну и в знак протеста некоторые довольно топовые люди уволились
Viktor
В итоге, виновные наказаны, все публично покаялись и все такое. Потому что эффект Барбары Стрейзанд. Нельзя начать гнобить людей и не ожидать, что из-за этого не поднимется вонь в сми.
Viktor
Всякие такие скандалы регулярно случаются, мне кажется.
Null
Happy Monday! 👋
На этой неделе разбираемся с in-place алгоритмами. Хорошая задача — move zeroes, подвинуть все нули в конец. Хороша она тем, что решается тривиально «в лоб», и имеет несколько вариантов развития.
Так же сделал анимированную демку 🔥
https://vitkarpov.me/posts/move-zeroes/
Viktor
Порридж В Ко-ливинге
Alexey
Порридж В Ко-ливинге
Alexey
Порридж В Ко-ливинге
Все же в курсе, что undefined не сортируется? Они просто их считают, и вставляют в конец или начало 🤣
Viktor
Viktor
Порридж В Ко-ливинге
А как? Для этой задачи?
О, код лежал с марта
void moveZeroes(int* nums, int numsSize){
int lastIndex = 0;
for (int i = 0; i < numsSize; i++){
if (nums[i] != 0){
nums[lastIndex] = nums[i];
if (lastIndex++ < i){
nums[i] = 0;
}
}
}
}
Порридж В Ко-ливинге
Alexey
Viktor
Порридж В Ко-ливинге
Alexey
Viktor
Порридж В Ко-ливинге
Где здесь идея из «сортировки в хроме»?
Просто вставляем данные которые надо, а в конце заполняем нулями. Отличие только в том, что не храним в переменной число нудей, а просто все что не нули заполняем
Viktor
Viktor
Задачка про сортировку цветов, ещё иногда называют «задача про флаг»
Viktor
По сути партишен, да
Viktor
Порридж В Ко-ливинге
Viktor
Roman
Dmitry
Народ , привет! Есть такой вопрос (наверное по system design): Если у нас есть распределенный redis cluster и много бэкенд серверов, которые пытаются обновлять одни и те же данные в redis-е, что должно происходить? надо ли как то настраивать механизмы блокировок? Или это как то само редисом разруливается?
Dmitry
Также будут ли какие-нибудь race conditions и подобное?
Viktor
Viktor
Есть пример про локи в книге — https://redislabs.com/ebook/part-2-core-concepts/chapter-6-application-components-in-redis/6-2-distributed-locking/6-2-1-why-locks-are-important/
Sergei
Кто-то здесь упоминал про интерес к SRE, ссылка на книги бесплатные от гугла, может пригодится https://sre.google/books/
Sergei
Пошёл нули двигать и как обычно не уточнил, что нельзя доп память использовать, главная ошибка собеседований, сразу писать код, не задав вопросы)
Viktor
Пошёл нули двигать и как обычно не уточнил, что нельзя доп память использовать, главная ошибка собеседований, сразу писать код, не задав вопросы)
на самом деле, да, это такая мини-ловушка. предполагается, что ты сразу выдашь тривиальное решение, оценишь сложность и скажешь про память (или тебя явно спросят, если нет), и потом интервьюер такой «молодец, это будет работать, но давай напишем сразу in-place»
Viktor
и вот тут начинаешь выдумывать алгоритм, если приходишь к пузырьку, как я там писал, тебя просят сделать его не квадратный по времени
Viktor
Sergei
У меня как-то в самом начале в голове зацепилось, что нужно оставлять аргументы immutable и всегда возвращать новый массив и я с тех пор всегда так пишу обычный код)
Viktor
Viktor
но на интервью может быть по-разному.
Viktor
специально чтобы проверить, что могёшь.
Sergei
Sergei
Но я бы не написал это сходу на интервью, максимум решение, где всплывает пузырьком.
Sergei
Мне, кстати, попадалась задача на интервью, есть несортированный массив числе 1..n, одно число пропущено, как найти это число со сложностью o(1)
Viktor
Viktor
Sergei
Я помню, что там решение заключалось в разности суммы членов арифметической прогрессии и индексов+1
Sergei
Но если эту формулу не знать, то так эффективно и не решить
Viktor
Порридж В Ко-ливинге
Боже, гугловские алгоритмы просто БЕШЕННЫЕ. Я не могу написать комментарий “go eat banana”, гугл его удаляет…
Viktor
Порридж В Ко-ливинге
Вообще, каждый раз, когда я хочу написать что-то провокационное, у меня получается это только с раза 10ого
Порридж В Ко-ливинге
Понимаете, алгоритмы выставляют коммента, а потом секунд 5 проверяют. Их вообще почти не реально надурить
Порридж В Ко-ливинге
Т.е. если менять буквы на кирилицу или латиницу, он поймет. Даже если вставтья unicode empty space character он все равно понимает что-то не ладное
Порридж В Ко-ливинге
Они там прям дресерованные как…
Порридж В Ко-ливинге
Они даже есть одно матерное слово вставляешь, все, минус коммент
Порридж В Ко-ливинге
Но причем я менял, менял, экперементировал как-то, причел почти к тому же самому, и он пропустил
Порридж В Ко-ливинге
Т.е. там оличий не было, склонение поменял вроде, даже мат был, и он пропустил