@oop_ru

Страница 744 из 785
Viktor
07.09.2018
12:41:38
а есть эта книга в pdf ?

Anton
07.09.2018
13:03:13
есть

и стоит копейки

Combot
07.09.2018
18:49:11
combot.org/c/-1001071233926

Google
Konstantin
07.09.2018
20:03:08
Сегодня был на собеседовании на позицию программиста php. Дали задание и 2 часа времени. Не справился, потому что 2 часа не хватало. Хочу Скинуть сюда задание



На мой вопрос, а кто-то успел ха два часа. Ответ ожидаемый, нет ;)

Артур Евгеньевич
07.09.2018
20:15:11
Здесь понадобятся графы

Но учитывая что у них 5 версия пыхи указана потеря не велика)))

da horsie
07.09.2018
20:17:28
Здесь понадобится решение в лоб со сложностью О(дохуя) после которого надо сказать "ну а теперь будем оптимизировать"

Shmaltorhbooks
07.09.2018
20:18:09
На собеседовании графы, а на деле потом суппортить бложек на вротпрессе

da horsie
07.09.2018
20:18:13
А графы хуяфы это для хипстеров.

На собеседовании под стрессом сортировку пузырьком за час хрен напишешь, не то что алгоритм с графами

Shmaltorhbooks
07.09.2018
20:21:47
Требования к кандидату: знание теории графов, php5

da horsie
07.09.2018
20:21:56
Решение в лоб с тестами в сто раз лучше неработающего "умного" без тестов

Google
Andrey
07.09.2018
20:22:43
Или быстрая.

Shmaltorhbooks
07.09.2018
20:22:47
Решение в лоб с тестами в сто раз лучше неработающего "умного" без тестов
Хз, иногда смотрят на ход мыслей, а не на двухчасовой результат

Aleh
07.09.2018
20:22:55
Или быстрая.
Или слиянием

Andrey
07.09.2018
20:23:01
Любая сортировка, где не надо ебаться с индексами, проще, чем та, где надо с индексами ебаться.

da horsie
07.09.2018
20:23:31
Такие штуки надо решать итеративно. И первый шаг запустить алгоритм на пустом множестве и проверить, что он компилится

Второй шаг - множество размера один и тест на то, что выдаётся отает

Ответ

Aleh
07.09.2018
20:24:25
Сортируем по дате и дальше за куб(или квадрат?) перебираем ?

Aleh
07.09.2018
20:25:06
нет
А дальше tdd ftw

da horsie
07.09.2018
20:25:31
Тока там не куб, а факториал

Но это похер, потому что на маленьких размерах все работает

Konstantin
07.09.2018
20:26:50
сейчас вакансию найду

Aleh
07.09.2018
20:27:37
Тока там не куб, а факториал
Не факториал, если отсортированы по дате, то решение будет первый элемент + самый длинный в остатке если начало совпадает с концом первого элемента, иначе самый длинный в остатке

И так рекурсивно, вроде даже квадрат выйдет

Но это не точно

da horsie
07.09.2018
20:29:28
Это ты уже оптимизируешь

Google
da horsie
07.09.2018
20:30:52
Надо мыслить стратегически. Чем хуже первое решение, тем больше места для маневра.

Aleh
07.09.2018
20:31:35
Надо мыслить стратегически. Чем хуже первое решение, тем больше места для маневра.
Так мое решение получается если идти индуктивно. Тест на пустое множество очевиден

На массиве из одного тоже

da horsie
07.09.2018
20:32:00
Я понимаю

Konstantin
07.09.2018
20:33:37


da horsie
07.09.2018
20:33:49
Но решение полным перебором при его очевидной тупизне и простоте даст тебе сразу тест на валидность результата, а это очень крутое начало.

Konstantin
07.09.2018
20:33:51
Не было ни одного технического вопроса

da horsie
07.09.2018
20:35:02
Konstantin
07.09.2018
20:36:42
Вакансия говно, забей :)
Я знаю. Просто негативный осадок остался. Я ехал туда час, час общался с хантером. 2 с лишним часа решал задание. Потом простой ответ, ну не успели, значит не справились( WTF) и час назад, домой со своими мыслями уже ехал, что не справился потому что не хватило времени.

Dmitry
07.09.2018
21:01:23
построить граф, вершины которого - маршруты из условия, а ребром соединяем такие маршруты А и Б, если после маршрута А можно сесть на маршрут Б и потом пускаем bfs из узлов, в которые нельзя попасть

Konstantin
07.09.2018
21:07:12
построить граф, вершины которого - маршруты из условия, а ребром соединяем такие маршруты А и Б, если после маршрута А можно сесть на маршрут Б и потом пускаем bfs из узлов, в которые нельзя попасть
Машрута нет, он может постоянно меняться. Представь что ты летишь допустим с Москвы в Минск потом в Литву, потом в Лондон. А можно сразу из Москвы в Литву, потом через день в Лондон. Таких маршрутов много, они динамические. Вот тот путь который я описал первый, он верный, так как длинный и согласно условиям соотвествует. Задача напоминает как поиск пути от одного юнита к НПС, но при этом ты ищёшь самый долгий путь.

Dmitry
07.09.2018
21:08:07
я неправильно сформулировал, не маршруты, а сегменты

Konstantin
07.09.2018
21:09:28
Я к тому что там пока поймёшь что к чему и от куда ноги растут, пройдёт пол часа, потом начинаешь накидывать код, мок данные, разбивать на методы и так далее. Ещё час, и уже думаешь а блин, я же не то писал, надо подругому логику приложения выстраивать.

Evgenii
07.09.2018
23:47:55
Не было ни одного технического вопроса
Вы меня конечно простите, но само описание вакансии говорит о том, что это полная хуита, а именно: - описание в дос формате(могу ошибаться) - отсутствие дресс кода(можно пиджак не носить) - будет плюсом опыт с Битрикс == Будешь по любому его юзать - шаговая доступность от м. Динамо - я не москвич, но знаю, что Динамо это днище еще то - тестовое задание, от которого ты, видимо, не в восторге - опыт от 5 лет- зп от 140р(верхняя планка, уверен, недалеко)

Evgenii
08.09.2018
00:19:43
это сарказм - писать об этом как преимущество - полный пиздец

Google
Konstantin
08.09.2018
00:23:30
Некрасиво Битрикс поддерживать

Это больше деловая переписка

Denis
08.09.2018
01:13:02
я как-то пришел на интервью, а там в офисе все мужики лет 50 чисто такие которые с кейсами ходят в полной классике, оказалось типа это они хайрят первого программиста в их сейлс офис, а остальные программисты на другом конце страны сидят

сказать что мне как сперматазоиду лет 20-ти с чем-то было не оч комфортно ниче не сказать

так что это что-то да говорит о месте где ты будешь работать, а это не последнее вообще в выборе конторы

Konstantin
08.09.2018
01:20:49
Ребята кто делал микросервисы, реальный опыт. Допустим есть авторизация - один микросервис и допустим есть сохранение какой то записи - другой микросервис. Получается по логике сперва пользователь авторизируется в одном микросермисе, потом хочет сохранить запись во втором микросервисе который слабо связан с первым и второй микросервис чтобы проверить токен лезит в первый проверять токен который был получин при авторизации и если всё окей то сохраняетс запись, нет, выдаёт ошибку что надо залогинится. Тестирования всего этого я понимаю достаточно накладно.

И взаимосвязь на уровне базы она получается тоже слабая, но а если надо связать запись с количеством просмотров этой записи а статистика в отдельном микросервисе, при этом есть записи удалённые и так далее которые только джойнить

Denis
08.09.2018
01:23:07
у нетфликса один высоконагруженный API сервис который как раз дергает авторизацию и пускает или не пускает

Konstantin
08.09.2018
01:23:11
Получается уже связь должна быть жёствая

Про авторизацию это просто, но есть другие связи пример выше как статистика просмотром, отключание одних связей и других. Допустим надо получить записи которые популярные и при этом учесть что пользователь отключил показ у себя в настройках отображение записи

Получается связь на уровне бизнес логики

Запашёк монолита пошел

Denis
08.09.2018
01:26:19
можешь в сторону CQRS решений посмотреть, есть статьи по тому как готовить kafka + flink

Denis
08.09.2018
01:26:59
надо собрать статистику? новую query модель делаешь из того же эвентсурса

у тебя синглсурс оф трутх получается твои эвенты, а не данные которые в базе лежат

первый раз слышу
ну вот посмотри это направление :)

Konstantin
08.09.2018
01:32:03
Хотя тут наверное вопрос на сколько мелко можно дробить проект на микросервисы.

Denis
08.09.2018
01:34:26
при правильной микросервисной архитектуре можно дробить хоть на микросервисы которые x с y складывают и отправляют результат дальше :)

Google
Konstantin
08.09.2018
01:39:02
при правильной микросервисной архитектуре можно дробить хоть на микросервисы которые x с y складывают и отправляют результат дальше :)
Просто думаю здесь есть люди кто реально имел опыт. Просто не охото делать микросервисы ради микросервисов. Должна быть какая то граница за которую не стоит заходить.

Denis
08.09.2018
01:41:06
>не охото делать микросервисы ради микросервисов Т.е у тебя сейчас нужды их делать нет? Если текущее решение всем устраивает, то зачем вообще пытаться чёт городить

Микросервисы это же про горизонтальную масштабируемость и fault-tolerance. Если в обозримом будущем этого не предвидится, то зачем преждевременно оптимизировать :)

Страница 744 из 785