gsomix
и шо б я делал без этого чатика?
Shub
та это ты просто гиперсенситивный
gsomix
До лисповых реплов не дотягивает, конечно.
gsomix
Да, репл тащит, быстрая разработка, т.к. сразу видишь результат
gsomix
https://tonsky.livejournal.com/316868.html
Ayrat
До лисповых реплов не дотягивает, конечно.
Я недавно ракет попробовал с подачи @AnutaU , я бы не сказал что там прям космически лучше, но из-за динамичности языка удобнее
Ayrat
И вообще, динамика это нестрашно
Ayrat
Но JS исключение
gsomix
Если на динамику повесить хорошие штуки вроде строгой типизации и иммутабельности, то становится неплохо.
Roman
И вообще, динамика это нестрашно
даже на больших проектах?
Roman
изменится, например, сигнатура функции, а узнаешь об этом в рантайме только. Или я че-то не понимаю?
Ayrat
даже на больших проектах?
на больших у меня лично опыта нет.
Roman
тесты это тоже рантайм, да и их писать и поддерживать надо
gsomix
тесты это тоже рантайм, да и их писать и поддерживать надо
А их в любом случае писать и поддерживать надо.
gsomix
Вне зависимости от типизации.
gsomix
Вопрос в количестве. :)
Ayrat
А их в любом случае писать и поддерживать надо.
статическая типизация убирает некое кол-во тестов
Roman
ну блян, со статичиской типизацией их меньше ощутимо
Roman
в фш надо ощутимо меньше тестов писать при правильном дизайне типов, чем в том же сишарпе, хоть у обоих есть строгая типизация
Roman
куда и почему?
Vladislav
И вообще, динамика это нестрашно
Чувак по эликсиру сказал, что все равно очень больно в сравнении
Vladislav
Даже с аннотациями
gsomix
Ну, мы не про сравнение C# сейчас, а то я опять сгорю.
Roman
да божимой не срача ради ну
Ayrat
Я когда-то думал что всякие там C# и Java это прям СТРОГАЯ типизация. Сейчас я смотрю на все эти неявные боксинги, имплисит касты через сабтипы и не понимаю где там строгость на самом деле. Очень много дичи позволяется
gsomix
В динамике еще можно так делать: описываешь контракты и тестируешь в интеграции на генерируемых данных.
Roman
мой опыт подсказывает, что на тесты очень часто кладется хер
gsomix
мой опыт подсказывает, что на тесты очень часто кладется хер
Тогда у тебя и со статической типизацией будут проблемы.
Ayrat
Тогда у тебя и со статической типизацией будут проблемы.
Быстро поднятое упавшим не считается!!1
Roman
оно и понятно — когда тебе человекочасов не хватает, чем ты жертвуешь в первую очередь? Функционалом, качеством архитектуры или тестами?
Roman
Тогда у тебя и со статической типизацией будут проблемы.
Чем меньше язык требует писать тестов, тем лучше
Roman
ладно, мы воду в ступе гоняем
Roman
ясен хуй что все всегда зависит
gsomix
Ну, вот тут не пишешь.
gsomix
В динамике еще можно так делать. Описываешь контракты и тестируешь в интеграции на генерируемых данных.
Ayrat
моё мнение, лучше доехать до прода и чинить, чем не доехать и выхолащивать. Идеально конечно иметь роадмап проекта, где и на тесты времени остаётся, но как показывает практика, юнит тесты переоценены. А вот интеграционные НЕДООЦЕНЕНЫ. На интеграционные смотрят как на говно, а по-моему они гораздо важнее этих ваших бесполезных юнит тестов, которые реально строгой типизацией решаются
Ayrat
короче, я за хуяк-хуяк в продакшн, но с интеграционными тестами.
gsomix
Динамика тут хорошо работает.
gsomix
При том, что рантайм контракты богаче по возможностям, чем распространенные системы типов.
Ayrat
Особливо радуют надрачивающие на dotCover, coverity и прочие процентажи покрытия кода тестами. Более бесполезной характеристики не придумать
Ayrat
цифра ради цифры
Ayrat
KPI, премии вот это вот всё
Roman
На одном проекте много че у нас делалось через ажур функции. Само собой кругом сплошное ООП с абьюзом DI и в хвост и в гриву, такая карусель из наследования и дженериков, что навигация по коду иногда просто не работала никак. Поскольку функции дебажить заебно — им инпут подавай и все такое, каждый запуск дебаг сессии отнимает минут 5, я написал тесты на DI контейнер, которые проверяют, что все, что там зарегано, контейнер может разрезолвить, пушто дико бесила ситуация, когда по 5 раз запускаешь, только чтобы узнать, что забыл зарегать очередной кусок говна. Так этот тест не прошел ревью, потому что он не юнит, ведь никакой юнит он не тестирует. Никогда у меня так долго жопа не горела
x
короче, я за хуяк-хуяк в продакшн, но с интеграционными тестами.
опять же depends, смотря что разрабатываешь. Одно дело сайтики, а другое прошивка для медицинского оборудования
Ayrat
т.е. я вот ковыряю бекенд для продукта который из себя рекламу по сути представляет. Не сайтик, но по уровню ответственности примерно там же
Roman
было бы забавно, если б в какой-нить америке была подписка на EAP мед оборудование с бесплатным лечением) Типа страховка не нужна, платить тоже, но риски берешь на себя)
Ayrat
Миллизивертом больше, миллизивертом меньше...
ампер туда, ампер сюда. Похуй что на человека электроды лепим. Недавно на хабре была статья про детский набор врача
Ayrat
где не было гальв развязки
Ayrat
нам чот в универе с 1го курса об этом рассказывали. Походу никто в универах не учился из тех кто эту еботу проектировал
Pavel
где не было гальв развязки
он что в розетку втыкался?
Pavel
ну тут хз. по хорошему в компе тоже развязка должна быть
Ayrat
но её там нет. В чайнике например тоже нет
Ayrat
во, нашёл. Называют конечно от души, хер найдёшь https://habr.com/post/427195/
gsomix
Всегда радуюсь, что он моей работы не зависят жизни людей.
Vladislav
Vladislav
I HOPE I HOPE I HOPE
Vladislav
Думаю тогда было легко присесть на очко из-за отсутствия инструментов
Ayrat
Думаю тогда было легко присесть на очко из-за отсутствия инструментов
а ещё из-за отсутствия хорошего опыта работы электроники под жоским воздействием радиации в течении длительного времени
x
Всегда радуюсь, что он моей работы не зависят жизни людей.
это да. Просто бывает такой софт, на который и патч-то не накатить нормальным образом. Там вариант с хуяк-хуяк приведёт потере бабла например )
Vasily
где не было гальв развязки
Вот это реально страшно
Ayrat
Вот это реально страшно
я в начале не поверил, это как выпускать в наше время лифт без ловушек между этажами. Типа камон, эти ловушки механические нихуя не стоят, кучу жизней спасли, вы серьёзно ебанулись и не сделали их?
Ayrat
типа в каждом доме стоят, в каждом стандарте описаны, какого хера?
Ayrat
Т.е. ни у кого мысли не возникло что что-то не так
Ayrat
Это правда страшно
Ayrat
Хотя это очевидно для человека который посещал пары в универе
Vasily
Возможно, те, кто проектировал, никогда не соединяли два компа через rs 232 без развязки