Shub
почему, волмарт просто наглядно демонстрирует, что для бизнеса бабло гораздо больше решает, чем качество кода и уровень разработчиков
так это все демонстрируют. куча исследований было, что внутреннее качество продукта коррелирует с успешностью продукта на уровне статистической погрешности
Doge
И нетривиальность начинается в тех случаях, когда его пытаются пристроить в не ту предметную область
Λ ll И K X
И падать вечно, угу)
да вроде не падает уже
Shub
Я скорее про то, что в тех случаях, когда он хорошо ложится на предметную область, то он не является особо нетривиальным
видишь ли, для меня лондонский полуглухой ласточкин хвост является тривиальным в случае, когда он ложится на общий дизайн шедевра, но попросить тебя его сделать - ты без пальцев останешься
Shub
это к тому, что решать по себе - это так себе оценка, я тоже полжизни считал, раз я могу - значит любой может, я-то в целом способностями ниже среднего. оказалось, что просто недооценивал себя
Shub
Сделать учётную систему с евентсорсингом будет куда проще, чем без него. И пальцы все целы останутся
кому будет проще, тебе? тебе - возможно, нет оснований тебе не верить. а дико тугому китайцу, который по каждой ошибке в деплой манифесте три дня пишет телеги директору отдела девопсов "почините свою систему, у вас все сломано" - ему это фактически сверхзадача
Shub
у нас тут есть персонаж, который делал презентацию, и в презентации предложил использовать API gateway для пары микросервисов. все одобрили, я говорю - ну раз возражений нет, то давайте сделаем шлюз для вообще всех микросервисов, чего только для трех? он мне пишет в личку (дословно) "напиши мне сюда, какие преимущества дает API шлюз"
Roman
не вижу смысла всерьез рассматривать конченых долбоебов при оценке абстрактных идей
Shub
(без знака вопроса)
Shub
Ну если так считать, то всё вообще в айти нетривиально. А это уже какая-то бессмысленная позиция, что всё вообще сложно, потому что случайным людям в профессии это сложно
это заблуждение. они не случайные. они нормальные. это ты случайный человек, отклонение от нормы. а они целиком и полностью представляют большинство
Shub
не вижу смысла всерьез рассматривать конченых долбоебов при оценке абстрактных идей
других долбоебов у меня для вас к сожалению нет. даже стрелочников нет, остались только эти. будете брать?
Nuxs🏴‍☠️
https://youtu.be/uwBMpB_yYiY
Nuxs🏴‍☠️
@Lanayx, видел вчера видео с тобой на ютубе:)
Nuxs🏴‍☠️
Кидаю во флудильню
Shub
следующих завезут ближе к концу пандемии
Shub
О.о
при этом он ссаный джун, а я принципал, лол
Shub
то есть у нас джуны дизайнят систему. ну это так, для контекста
Roman
других долбоебов у меня для вас к сожалению нет. даже стрелочников нет, остались только эти. будете брать?
не будем. Зачем вообще ориентироваться на долбоебов? Ты все равно проиграешь, даже если дашь им в руки го, спринг или что угодно другое
Крылатый
Привет, гочай?
Крылатый
то есть у нас джуны дизайнят систему. ну это так, для контекста
Эх. Вспомнил, как сам дизайнил джуном, потомуч что остальные заняты были.
Крылатый
Благо не целые сервисы)
Shub
не будем. Зачем вообще ориентироваться на долбоебов? Ты все равно проиграешь, даже если дашь им в руки го, спринг или что угодно другое
повторюсь, что у меня других нет. мне нужно закладывать этот факт в свои прогнозы. в прошлый раз в прогнозы заложили наличие умных и высокомотивированных разработчиков, но наняли идиотов с пояснением "ну раз я освоил эфшарп за месяц, то сунь хунь мунь освоит за 5 недель"
Shub
поэтому я лично считаю, что инструментарий должен быть таков, чтобы уменьшать мой личный контроль. 75% нашего тупого кода не прошел бы через банальный линтер
Shub
жаль, что линтер в эфшарпе писал уходящий от нас стрелочник, поэтому он не линтит ничего
Shub
ну и по этой же логике мы не можем использовать кучу всего. потому что тупой не напишет "Интерпретатор", не сможет написать моноид, не сможет трансформировать стек монад. мне потом что демонстрировать своему директору, типа, вот, тут была попытка, где наш participation trophy?
Anatoly
Я не уверен, что я напишу моноид
Roman
Я не уверен, что я напишу моноид
моноид это просто. Тип 'a, операция 'a -> 'a -> 'a и нейтральный элемент для нее. Вот и весь моноид
Михаил
А монада?
Roman
поправил
Roman
А монада?
а монада это всего лишь моноид в категории эндофункторов!
Михаил
А, понятно (нет)
Shub
А монада?
чуть сложнее - ДВЕ операции
Михаил
Есть пример из стандартной библиотеки?
Shub
но самое интересное в монадах и моноидах - это доказать, что они соблюдают законы, желательно доказать в компайл-тайме
Shub
а стек монад?
в эфшарпе нет хорошей истории для стека, в основном потому, что нет синтаксиса, приходится писать СЕ для каждой комбинации
Михаил
Множество моноидов включает в себя множество монад?
Roman
да, ведь монада — это моноид. В категории эндофункторов)
Shub
Множество моноидов включает в себя множество монад?
включает ли множество непустых множеств само себя?
Крылатый
У меня мега тупой вопрос. А зачем моноиды и монады?
Shub
У меня мега тупой вопрос. А зачем моноиды и монады?
в некоторых языках стдлиба дает много ништяков бесплатно
Shub
или какая-то другая либа
Igor
Например?
что бы map написать полиморфную)
Shub
а на спичках можно обьяснить?
стек монад - это такой способ скомбинировать низкоуровневые монады в монаду, которая имеет свойства всех этих монад. это дает профит, если у тебя есть синтаксис в языке (сахар или штатный - не важно) описывать такие комбинаторы и использовать их потом. в эфшарпе этого нет, у нас CE заместо монад, а они не позволяют комбинировать, тебе нужно писать реализацию нового CE, возможно в терминах существующих CE. можешь посмотреть FsToolkit например, они там написали комбинаторы для AsyncResult
Михаил
Дайте тогда второй пример монады из стандартной библиотеки?
Shub
Например?
например если ты сделаешь свой тип аппликативным функтором, то у тебя в хаскеле есть целый модуль Data.Control и Data.Applicative, дающий множество операторов. а так же куча других либ принимают на вход функторы
Maksym
есть разные понятия "функционально".
Лично для меня было сложно переключиться что бы программировать на railway подходе
Maksym
С result.bind и всем остальным
Shub
Лично для меня было сложно переключиться что бы программировать на railway подходе
нет никакого railway подхода, это лженаучная теория по типу гомеопатии
Shub
есть монадичный код
Roman
Дайте тогда второй пример монады из стандартной библиотеки?
любой тип-контейнер, для которого есть map. Мап — это та операция, о которой говорили в моноиде. Например, энумерабл — монада. Можно смапить элементы, и можно сделать лифт — построить энумерабл из единственного элемента
Maksym
Потому что со стороны видно больше
Maksym
И где данный подход тоже не очень подходит
Shub
Ладно, тогда просто с async result
ну ты ж понимаешь, что async result - это банально 'T и 'U?
Maksym
Да
Maksym
Это и так понятно
Maksym
Ну фишка в том что async result как массив на выходе, это уже немного сложно как обрабатывать
Roman
а, моэет быть, да
Shub
и у функтора сигнатура должна быть (a -> b) - F<a>->F<b>
Shub
в смысле у fmap