Nikita
иногда поиск либы и изучение всех ее особенностей занимает больше времени чем написать самому с ожидаемым поведением
это миф, который ты сам себе придумал, чтобы оправдать потраченное время. Тебе также надо написать тесты и написать доку.
Vladimir
и сделать сайт, и вебинары
Evgeny
синдром НИХ
Vladimir
может быть, отчасти. Рациональная его часть
Nikita
нефига не рациональная
Nikita
я специально про debounce спросил
Evgeny
это либо начало чего-то нового и большого (если отдать в сообщество и оно примет) либо как обычно - мегажопа для бизнеса
Nikita
это оттестированная и проверенная функция в lodash. Нет вообще никакого смысла ее самому писать
Vladimir
Может вы гуру npm, но я не знаю как искать очень конкретные вещи и находить что-то приличное
Evgeny
поиск новых людей сложнее - тебе надо найти не просто чувака у которого есть опыт с чем-то, тебе надо найти чувака достаточно любопытного чтобы учить ваши утилиты быстро.
Evgeny
Плюс - стоимость вхождения нового человека
hamper 𓅝
ну я вот не понимаю зачем такое из npm ставить если и написать можно без лишнего кода для поддержки старых версий https://github.com/juliangruber/isarray/blob/master/index.js
Vladimir
проще найти нормально толького разработчика, чем тупого, который знают нужную комбинацию
Evgeny
ну да, ну да.
Evgeny
стоимость - вот ключевое слово
Nikita
у тебя черное и белое, какие-то стереотипы)) нормальный разработчик - это тот, который умеет использовать инструменты. Может и сам написать и взять готовое
Evgeny
а еще девелопер-лок
Vladimir
> @gusnkt это тот, который умеет использовать инструменты. Может и сам написать и взять готовое это не значит, что он должен все знать заранее
Nikita
я такого вообще не говорил
hamper 𓅝
нормальный разработчик должен уметь быстро разобраться в тех инструментах которые ему нужны для конкретного проекта
Vladimir
все равно 90% кода - бизнес логика
Nikita
я говорил, что знания, которые разработчик получает в проекте хорошо было бы использовать в другом проекте
hamper 𓅝
а то бывают такие типа "знаю только ангуляр, не лезте ко мне со своим эмбером"
Nikita
а увидив твой debounce в следующем проекте ему прийдется учить _.debounce. и под debounce я подразумеваю все твои хелперы, которые давно написаны и всеми используются
Vladimir
> @gusnkt учить _.debounce квантовая физика!
Vitaly
Теория струн и коллбэки
Nikita
ок) ясно-понятно)
Evgeny
Уходит лид с синдромом ниха, приходит другой: - с ним же - и бизнес платит за переписывание всего под нового - без него - и бизнес платит за переписывание на общепринятые стандарты потихоньку. ту-же сумму но в кредит
Vladimir
что есть “общепринятые стандарты”? принятые кем?
Nikita
ахахахах)))
Vladimir
и вот так половина npm
Nikita
вот зачем брать готовое, а не писать говноутилитки свои. потому что могу
Nikita
так это такой же как ты чувак) просто в npm выложил)
hamper 𓅝
надо побенчмаркать что быстрее, встроенный Array.isArray или из npm (который много у каких модулей в зависимостях)
Vladimir
его я могу понять, а вот тех кто это использует - не могу
hamper 𓅝
ахахахах)))
тебе смешно... а теперь посмотри в node_modules какого нибудь крупного проекта
hamper 𓅝
с 90% вероятностью он там будет лежать ))
Nikita
это невероятно тупой аргумент
Nikita
ты предлагаешь не ставить весь этот список зависимостей, а написать его самому)
Vladimir
помимо всего прочего, у меня flow, а для статической типизации нужны вменяемые API
hamper 𓅝
ну как минимум не пользоваться им даже если он есть в зависимостях других модулей
Vladimir
что не принято в js экосистеме
Evgeny
сваггер - и неожиданно принято
Vladimir
я про js api
Nikita
вот кстати про бизнес-логику
Nikita
там оправданы свои велосипеды
Nikita
не понимаю, как остается время писать утилиты
Vladimir
ну это по определнию велосипед
Vladimir
ну может процентов 5 времени это занимает, да
Vladimir
вопрос, сколько бы времени занимало бы искать и изучать либы
Nikita
если глаз наметан, на мой взгляд быстрее
Nikita
ты уже примерно понимаешь, что это вот скорее всего в lodash есть, а это там-то и тд
hamper 𓅝
с либами еще частенько случается такое что она работает не в некоторых случаях делает совсем немного не то, чего хотелось бы
Nikita
бывает и такое. но это примерно, если бы ты работал каким ни будь сантехником, вместо того, чтобы нужный ключ в магазине покупать, ты свой вытачивал. На улице же дождик, а в магазине может ключа не оказаться)
Vladimir
плохой пример
hamper 𓅝
иногда сантехники дотачивают ключи если они не совсем подходят ))
Vladimir
какие основания считать, что код с npm лучше того, что ты напишешь сам?
Nikita
отличный) Свои инструменты приятно делать. Но это должен быть либо крайний случай, либо свободное время, когда ты свой ламповый петпроджект пилишь
Vladimir
или что он вообще работает?
Nikita
в тесты посмотреть
hamper 𓅝
тесты не всегда все возможные случаи покрывают
Nikita
или ты пишешь быстрее, чем читаешь?
Nikita
тесты не всегда все возможные случаи покрывают
дописать нужные. Это быстрее, чем все написать
Nikita
вы никогда PR с тестами не видели?
Vladimir
ну вот как пример - redux быстрее написать, чем прочитать его доки
Nikita
это ты сейчас говоришь, понимая redux вдоль и поперек)
Nikita
у меня как раз руки чесались недавно thunk самому написать) Как раз из-за типов
Vladimir
да, потому что я как-то раз такое сделал, еще когда не было редакса
Vladimir
это заняло 15 минут
Nikita
это все нас возвращают к аргументам про других разработчиков
Vladimir
если бы я пошел в npm, не знаю чем бы кончилось
Nikita
доки существуют не для тебя. А для других разработчиков
Vladimir
опять же утилы - от силы 10% кода
Vladimir
допустим их заменить либами с npm с отличными доками
Nikita
утилиты пронизывают твой код весь
Nikita
на них держится код
Vladimir
90% кода останутся как есть
Vladimir
нет, утилы не пронизывают ничего и ничего на них не держится