Shub
потому что некто решил, что fscodec - это строго для внутреннего использования
Shub
в смысле, equinox
Ayrat
Понимаю. Я кстати делал PR в еквинокс с полной заменой сериализатора
Shub
ну там вообще много интересного
Shub
там например парсинг cli по 120 строк - это норма
Ayrat
Рубен его завернул потому что я запихнул UTF8Json, а там вышел System.Json
Shub
или жестко зашитые переменные окружения используемые в качестве параметров
Ayrat
Added utf8Json support · Issue #113 · jet/equinox https://github.com/jet/equinox/pull/113
TOV_MULTIMASSO
Кто-то пытался в симуляцию типов вида { x | x of X, pred(x) }
Shub
ты че, это ведущий контрибутор в fslint, how dare you
Ayrat
У него был поинт, а мне было похуй в целом, я уже тогда с джета валил
Ayrat
Хотя не, 11 месяцев назад ещё не валил
Shub
ну оно тут все так. у него постоянно есть какой-то поинт, в результате чего туда принимаются совсем незначительные патчи
Shub
правда, потом это все спешно приходится перепиливать, потому что оказывается наши кейсы НЕ ЛОЖАТСЯ на дизайн, лол
Ayrat
У вас ещё странные кейсы так-то
Shub
ну это такое, PR сам себя не напишет, а код сам себя не проревьюит
Ayrat
Another day, another PR
Shub
У вас ещё странные кейсы так-то
мы между прочим перепилили все свои кейсы под эквинокс, целенаправленно. но эквинокс по состоянию на 11 месяцев назад и по состоянию на сегодня - это два разных эквинокса
Диёр
кода много, продукта мало
Shub
весь наш продукт можно было запилить на php+mysql
Shub
вообще никаких проблем не было бы
Shub
но тут просто царит два взаимоисключающих убеждения
Shub
первое - это что эфшарп якобы привлекает разработчиков выше среднего, а второе - это что эфшарп позволяет писать код проще среднего
Ayrat
весь наш продукт можно было запилить на php+mysql
Понимаю. Я вот вчера давал вводную в суперман для десятка людей с русскими именами и заметил что все сервисы супермана - консольные апликухи, где стартуется листенер кафки и пихается чот в редис. И никаких фреймворков
Anatoly
В головах
думаешь их уже расстреляли?
Shub
ну у нас до сих пор приблизительно так и было, ну если не считать тонн этих слоев, просто греющих процессор.
Ayrat
думаешь их уже расстреляли?
Следовало бы. Но к сожалению они живы
Shub
но ведь так нельзя, как это - без фреймворка?
Doge
Кто-то пытался в симуляцию типов вида { x | x of X, pred(x) }
Ну не совсем. Для такого обычно не нужно делать все эти безумные перегрузки операторов.
Doge
В особенности те, что с интом.
Doge
но ведь так нельзя, как это - без фреймворка?
И да, у вас нет правила, что неиспользуемый в приложении код выбрасывается?
Doge
первое - это что эфшарп якобы привлекает разработчиков выше среднего, а второе - это что эфшарп позволяет писать код проще среднего
Ну проблема в том, что при этом набираете же всё равно людей с C# без предыдущего ФП опыта
Shub
И да, у вас нет правила, что неиспользуемый в приложении код выбрасывается?
а как ты определишь, используется он или нет? я чисто случайно знаю, что конкретно этот код мертвый, а сколько мертвого кода я не знаю - даже задумываться не хочется
Диёр
найти мёртвый код и доказать что он мёртвый, а потом ещё и полный цикл тестирования пройти это жопа
Doge
а как ты определишь, используется он или нет? я чисто случайно знаю, что конкретно этот код мертвый, а сколько мертвого кода я не знаю - даже задумываться не хочется
По упоминаниям в других частях кодовой базы. Референсы + полнотекстовой поиск, чтобы понять что рефлексией явно не дергается. (Хотя если у вас очень много DI и совсем грязной магии на рефлексии, то не поможет)
Shub
Ну проблема в том, что при этом набираете же всё равно людей с C# без предыдущего ФП опыта
тут дело не в опыте. я считаю, что у нас (в широком смысле слова) сформировалась особая культура, и что многие люди оптимизируются именно под эту культуру для достижения финансового успеха. проще говоря, им полностью все равно, какой там код или какой продукт - вознаграждение приходит по абсолютно отдельному критерию
Shub
если так хорошо задуматься, то что важнее - качество кода в репозитории или лично мой карьерный рост (и как следствие - рост моего финансового дохода)?
Shub
если мне скажут, что завтра меня повысят до СТО при условии тотального отказа от любого понятия "качество" - я начну писать такой код, от которого птицы будут падать с небес
Диёр
По упоминаниям в других частях кодовой базы. Референсы + полнотекстовой поиск, чтобы понять что рефлексией явно не дергается. (Хотя если у вас очень много DI и совсем грязной магии на рефлексии, то не поможет)
не поможет ведь у тебя может 50% кода не вызываться просто потому что у тебя есть какой-то условный метод в апихе, который никто никогда не дёргает и дёргать не будет, но при этом код то тебе любой компилятор и линтер пометят как живой
Shub
Метрики повесить
пробовал когда-нибудь продать идею "повесить метрики" менеджеру, у которого единственный kpi - деливери в срок? скорее, тебя самого там на дверной ручке повесят
Shub
Ну я весь тред не читал. В продуктовой разработке продаётся нормально
это пока туда не зашли реальные деньги, за которые у среднего звена есть интерес перегрызть конкурентам глотку
Shub
ну ты задумайся, что значит стать начальником пускай небольшого, но департамента в fortune-100?
Диёр
я в стартапах когда работал там в любой момент времени приоритет у времени когда фича выкатится
Диёр
баги фиксятся только если мешают главному флоу или мешают маркетингу
Shub
причем желающих много, а вакансия одна, и при прочих равных есть только одно неизвестное - деливери в срок
Shub
вот например такой фактор: в крупных компаниях бюджет на следующий год распределяется на одном-единственном ивенте продолжительностью в два-три дня.
Shub
если ты к этим датам не успел выкатить пилот - никого не волнует, что он будет через неделю после согласования бюджета. на этот год у вас не будет ни копейки денег
Диёр
кстати у инвесторов обычно такое отношение что если вдруг разработки стало мало, то проще миллиард индусов закупить, чем дать время на рефактор
Shub
ну и это тоже
Shub
так что да, чем больше денег - тем больше желающих эту систему заэксплоитить. потому что становится отчетливо понятно, что проектов - миллионы, если не миллиарды, и одним хорошим проектом больше или меньше - лично для тебя вообще ничего не меняется, в резюме они все блестяще-успешные
Shub
я думаю, все работали с легаси, от которого хочется уйти в запой, да? как вы считаете, куда ушли авторы этого кода? вы ж не думаете, что они удалились в пустынь замаливать грехи до исхода времен, не так ли?
Диёр
о, я даже видел куда ушли авторы этого кода
Диёр
и я бы туда пошёл)
Shub
они как правило уходят куда-то с повышением, не так ли?
Диёр
всё так
Shub
замечательный реинфорсмент для зарождающегося условного рефлекса
Anonymous
Такое впечатление, будто никто из вас некачественный код не писали собственноручно. А если вспомнить "как это было" и свои ошибки, то ведь это тоже кому-то досталось как сомнительное наследие.
Диёр
Такое впечатление, будто никто из вас некачественный код не писали собственноручно. А если вспомнить "как это было" и свои ошибки, то ведь это тоже кому-то досталось как сомнительное наследие.
меня за непонятный код обычно "пиздили" когда я сам писал старался писать так чтобы тот, кто увидит, не захотел поступить также
Shub
Такое впечатление, будто никто из вас некачественный код не писали собственноручно. А если вспомнить "как это было" и свои ошибки, то ведь это тоже кому-то досталось как сомнительное наследие.
дело не в этом. да, херовый код писали все, но некоторые потом рефлексировали и думали, как им стать лучше, и даже в последствии перестали писать херовый код. а некоторые (или многие?) заметили паттерн - что им ряд достижений дался значительно легче, чем рефлексирующим
Shub
я этот процесс наблюдаю живьем. вот рядом сидит джун, вроде талантливый. он два или три раза получил по голове за исправление чужого говнокода, и щас радостно строчит эквивалентный говнокод, потому что его за это хвалят
Anonymous
дело не в этом. да, херовый код писали все, но некоторые потом рефлексировали и думали, как им стать лучше, и даже в последствии перестали писать херовый код. а некоторые (или многие?) заметили паттерн - что им ряд достижений дался значительно легче, чем рефлексирующим
Тут согласен, но рефлексия де-факто спасает от грядущих ошибок. И где-то сейчас сидит кто-то и разгребает код, написанный тобой пять лет назад, от которого ты сегодняшний наверно и сам плевался бы и рассуждает в таком же духе. That's life (c)
Anonymous
Именно по этой причине я глубоко убежден, что у нашей - еще очень юной по меркам сформировавшихся профессий - сферы нет будущего без достаточно высококлассной культуры менторства и передачи опыта напрямую в молодое поколение. И стараюсь сам, насколько позволяет опыт и знание людей, быть таким ментором для моих подопечных даже если меня об этом не просят и заранее зная, что за это не скажут спасибо. Да и выводы эти справедливы не только ведь для IT. А вот вопрос каким должно быть менторство, в каком виде и когда - это "куда ж нам плыть?" по Пушкину и именно этим вопросом должны быть озадачены все те, кто считают себя (или мнят?) элитой IT.
Anonymous
Между прочим со всем, что я выше написал, напрашиваются десятки исторический параллелей в виде знахарских/жреческих культур, которые сталкивались примерно с такими же проблемами и примерно так же их и решали - и тогда обеспечивали себе устойчивое развитие на столетия вперед, или не решали - и тогда бесследно погибали, будучи поглощенные теми, кто эти проблемы решил лучше.
Anonymous
а если бы люди, которые проводили там кодревью, рефлексировали, то тот чел не написал бы говнокод)
это еще большой вопрос. как раз самая опасная стадия талантливого разработчика - это "поиск истины" или "поиск себя", называйте как хотите. как раз в этой фазе люди начинают свою Кафку строить поверх Кассандры.
Doge
ты предлагаешь мне каждую ветку тащить в иде и руками исследовать ее на мертвость?
Я видимо слишком к расту уже привык, там компилятор сам об этом предупреждает.
Диёр
будто кто-то по голове ударил