# Понедельник 63 твита
Всем доброго утра! В следующие семь дней с вами Денис @dshevchenko_biz Шевченко, программист, известный в узких кру… twitter.com/i/web/status/9…
8:31Каковы планы на эту неделю? Посмотрим, как пойдёт, не люблю загадывать. Но упор планирую сделать на практику. Будет код, друзья, много кода!
8:31@backendsecret @dshevchenko_biz опять фп и хаскель? был тут недавно уже такой. чем отличаться от него будете?
Многим буду отличаться. Виталий - преподаватель, и говорил о вещах, о которых я имею смутное представление. А главн… twitter.com/i/web/status/9…
9:04@backendsecret Давай сразу про гендерный вопрос.
О нет, вот этого точно не будет. Дабы сразу обрадовать/разочаровать (нужно подчеркнуть), перечислю темы, о которых… twitter.com/i/web/status/9…
9:07@backendsecret Без поллитра-то получится код на этом вашем Хаскеле понять?
А вот и узнаем! ;-) twitter.com/blazernere/sta…
9:08Отвечая @aarexer, расскажу немного о себе.
В программирование я пришёл в 2005 году, и началом был ассемблер для ми… twitter.com/i/web/status/9…
9:56И вот, с 2006 года я окунулся в С++. Изначально, правда, это была ещё нестандартизованная версия (основанная на Bor… twitter.com/i/web/status/9…
9:56Были, правда, ещё и мысли о том, чтобы остаться в C и программировать Linux kernel. Но потом плюсы всё же одержали… twitter.com/i/web/status/9…
9:56И вот однажды, на столе у своего тогдашнего техдира, я увидел книгу "Programming in Haskell". Спрашиваю, мол, что з… twitter.com/i/web/status/9…
9:56Найдя упавшую на пол челюсть и приделав её обратно, я спросил, ээээ, а как это можно программировать без оператора… twitter.com/i/web/status/9…
9:56А где-то год спустя увидел в интернете слово Haskell, и вспомнил, аааа, так это же тот самый, без присваивания. И в… twitter.com/i/web/status/9…
9:57Начал искать материалы. А год это был 2012. И было это, скажу я вам, непросто. Нормальным, человеческим языком, вот… twitter.com/i/web/status/9…
9:57Начал формулировать мысли в своём бложике. Затем была просьба, идея, и реализация идеи, идеи о книжке для самых-сам… twitter.com/i/web/status/9…
9:57Так я полюбил ФП. Но с точки зрения карьеры я всё ещё был С++-программистом, однако к 2014 году я понял - всё, хочу… twitter.com/i/web/status/9…
9:57Сейчас я работаю в #IOHK, это моё третье Haskell-место. Первые два, к сожалению, пришлось сменить по причинам, не связанным с Haskell.
9:57@backendsecret Денис, а рассказ о том, что скала - это фальшивое ФП, будет? :)
Я толком не знаком со Scala, поэтому вряд ли. Но тот пример, с Either - да, его приведу. ;-) twitter.com/iShelop/status…
9:58Иногда (по семейным делам) буду пропадать, так что не обижайтесь, если не отвечаю на все вопросы сразу.
10:11@backendsecret Расскажешь про рекурсию?
Почему бы и нет? Расскажу. twitter.com/bitomaxsp/stat…
10:14Впрочем, в качестве первого объяснения, вероятно, подойдёт глава из моей книжки: ohaskell.guide/recursion.html
10:18@backendsecret Нееее не могу это читать где AbstractRecursionSingletonProviderBean
Вот уж чего нету, того нету... Извиняйте... twitter.com/hmemcpy/status…
10:22@develop7 @backendsecret А если серьезно? Что конкретно лучше писать на хаскеле?
Компиляторы/интерпретаторы, EDSL, бэкенд. twitter.com/artezzzgml/sta…
11:49@backendsecret @dshevchenko_biz Если отталкиваться от проблем, то для решения каких задач, в каких областях ФП дейс… twitter.com/i/web/status/9…
Проблема в том, что мой ответ будет расценен как предвзятый. :-) И всё же я отвечу - да, однозначно стоит овчинка в… twitter.com/i/web/status/9…
11:52@backendsecret Совершенно случайно прочел вашу книгу за вечер, и это прекрасная книга, заинтересовался Haskell.
Не… twitter.com/i/web/status/9…
Планирую, но не сейчас. На данный момент я сильно занят, как по основной работе, так и по важному личному проекту. twitter.com/gild0r/status/…
11:53@backendsecret А какое IDE лучше всего подходит для разработке на Haskell?
Для Haskell нет полновесных IDE в том смысле, как есть для Java или C#. Однако, после доработки напильником, прекра… twitter.com/i/web/status/9…
11:55@backendsecret Было бы круто увидеть примеры композиции монад: MTL, Free(r). Как я понимаю, эти знания - мастхэв дл… twitter.com/i/web/status/9…
О нет, мы будем смотреть на вещи, гораздо более простые. Free(r)? У нас в проекте нет Free(r), и однако же PoS-крип… twitter.com/i/web/status/9…
12:03@backendsecret а плагин для Idea совсем плох?
Не знаю, не пробовал. Отзывы слышал, да, но они противоречивы: кто-то хвалит, кто-то ругает... twitter.com/goshan__4ik/st…
12:04@shkuropadsky @backendsecret @dshevchenko_biz Существует так же опасность, что часть разработчиков будет сильно про… twitter.com/i/web/status/9…
О да! Многих программистов одна лишь аббревиатура "ФП" вводит в ярость и желание драться. Это при том, что большинс… twitter.com/i/web/status/9…
13:14@backendsecret ленту не читал, но есть к тебе вопрос. Есть ли препятствия/проблемы распространения идей ФП? Почему? Как можно решить?
Да, препятствия есть. И в основном - психологического характера:
13:23@backendsecret , слушал выпуск подлодки с вашим участием. про хаскелл и фп. Очень сильно захотелось попробовать. Но… twitter.com/i/web/status/9…
Да, есть такое: в России таких вакансий пока очень мало. Их количество растёт, да, но на фоне остального рынка труд… twitter.com/i/web/status/9…
13:36@backendsecret Как насчёт Haskell vs Clojure, а то вот @_bravit обещался, будучи на месте @backendsecret, да так дело и не дошло
Нет. Сравнение языков - холиварная тема, ражигать очередной срач здесь я не хочу. twitter.com/gild0r/status/…
14:13@backendsecret Просто очень интересно было бы послушать мнение того, кто в теме, может кто из читателей… twitter.com/i/web/status/9…
Я обеими руками за сильную статическую типизацию. Потому что она помогает мне, каждый день. Однако я не делаю из эт… twitter.com/i/web/status/9…
14:20Итак, обещанный на сегодня пример. Пример, понятный нам всем - работа с конфигурационным файлом. Трудно вспомнить з… twitter.com/i/web/status/9…
16:04Итак, что же такое конфигурация? Это стуктурированный набор данных, необходимых нашей программе для работы. Следова… twitter.com/i/web/status/9…
16:04Да, с точки зрения компьютера конфигурация - это файл, то есть тупо строка. Но мы не хотим работать со строками, по… twitter.com/i/web/status/9…
16:04Пример, который вы увидите, отражает декларативный подход к парсингу. Сначала мы определяем типы, отражающие конфиг… twitter.com/i/web/status/9…
16:04Итак, вот пример: gist.github.com/denisshevchenk…. Код кажется большим, но это лишь потому, что там куча комментариев. Реко… twitter.com/i/web/status/9…
16:04На неделе с Виталием меня обвиняли в том, что все приводимые мною примеры - это лишь примитивные однострочники. Поэ… twitter.com/i/web/status/9…
16:06Кстати, используемый на строке 71 Either - это конструктор типа с возможной проблемой. Его реализация предельна про… twitter.com/i/web/status/9…
16:26То есть когда мы конструируем Either-значение, оно всегда находится в одном из двух состояний:
16:26На @backendsecret функциональные программисты дошли до парсинга конфига. Фибоначчи уже написали, а то лень искать?
Нет, обойдёмся без них. Конфиг - он как-то душевнее, ближе будет... twitter.com/mtreskin/statu…
16:39@backendsecret Примеры это круто, но вспоминая прошлого себя я бы подумал "Да вон нахер оно надо, еще типы какие-то… twitter.com/i/web/status/9…
Не всегда обречён. В большинстве случаев - да, но не всегда. Моя цель не в том, чтобы чем-то похвалиться через подо… twitter.com/i/web/status/9…
16:41@backendsecret Чтоа такое алгебраический тип данных
Алгебраический тип данных (АТД) - это тип, состоящий из других типов. Посмотри на строчку 29 - это АТД. АТД бывает… twitter.com/i/web/status/9…
16:48Ты спросишь, почему произведение? Здесь же вроде ничего ни на что не умножается. Ответ в математике, ведь речь идёт… twitter.com/i/web/status/9…
16:48Вот почему, предоставив экземпляр класса FromJSON для типа ReceiverConfig, мы обязаны предоставить такие же экземпл… twitter.com/i/web/status/9…
16:48@backendsecret Давайте что-нибудь более практичное, с сайд-эффектами. Я немножко хаскель-хейтер, так как считаю, чт… twitter.com/i/web/status/9…
Не всё сразу. :-) Дойдём и до трансформеров. twitter.com/borovikov/stat…
16:50А упомянутый мною Either - это тип-сумма. Мы пишем data Either a b = Left a | Right b. То есть либо Left, либо Righ… twitter.com/i/web/status/9…
16:52Однако, повторюсь: вся эта математическая терминология известна мне лишь потому, что я (с определённого момента) за… twitter.com/i/web/status/9…
17:06@backendsecret Воспользуюсь моментом и кину ссылку на свой канал, где я IMO очень подробно и доступно это расписал… twitter.com/i/web/status/9…17:42
@backendsecret Примеры это круто, но вспоминая прошлого себя я бы подумал "Да вон нахер оно надо, еще типы какие-то… twitter.com/i/web/status/9…
> строчки из ямла достал и усе
Так нам же не строчки нужны. :-) Нам нужны URL, или порт, или список адресов, или е… twitter.com/i/web/status/9…
17:48@qnikst @backendsecret Я это понимаю. Но не вижу в реальном хаскел-коде. И непонятно что там выделить можно, если в… twitter.com/i/web/status/9…
Отделение чистого кода от кода, взаимодействующего с внешним миром - это вопрос правильного проектирования. Конечно… twitter.com/i/web/status/9…
17:51@backendsecret Мой поинт в том, что в real world приложениях чистой логики очень мало. И это уже вопрос не проектир… twitter.com/i/web/status/9…
Смотря о каких real world приложениях идёт речь. Да, есть много таких, где происходят преимущественно IO-действия.… twitter.com/i/web/status/9…
19:00@troglotit @backendsecret MTL и правда must have. Туториалов по нему, хороших, однако, мало даже на английском :( О… twitter.com/i/web/status/9…19:10
@backendsecret Избегай успеха любой ценой
Опять... Simon Peyton Jones, один из создателей Haskell, уже объяснял истинный смысл высказывания "Avoid success at… twitter.com/i/web/status/9…
20:51@backendsecret @ChShersh @troglotit Давно хотел спросить. Не кажется ли недостатком то, что для такой простой задач… twitter.com/i/web/status/9…
Нет, это не кажется недостатком. Напротив, это кажется преимуществом, потому что именно это позволяет жёстко отделя… twitter.com/i/web/status/9…
20:56А насчёт "довольно непростой абстракции"... Ну вот посмотри на меня: бывший плюсовик, математического образования н… twitter.com/i/web/status/9…
20:57@backendsecret Я не говорил, что не могут, я говорил, что она непростая. Требует времени для привыкания, и людям мо… twitter.com/i/web/status/9…
> действительно ли такой контроль так нужен
Да, он нужен. Но не в том смысле, что без него нельзя, а в том смысле,… twitter.com/i/web/status/9…
21:29@backendsecret А какая предистория для названий right,left? Ну right ещё можно понять, но почему left, а не error или wrong?
Не знаю. Очевидно, взяв Right, просто подобрали наиболее естественный антоним, то есть Left. ;-) twitter.com/iflask/status/…
21:34@backendsecret А удобство изменения ФП-программы при неполных и постоянно меняющихся требованиях со стороны заказчи… twitter.com/i/web/status/9…
Декларативная модель очень помогает сопровождать проект. Известное зло при изменениях - в одном месте что-то поменя… twitter.com/i/web/status/9…
21:40А когда глобального разделяемого состояния нет - тогда нет и проблем, им порождаемых.
21:41@backendsecret расскажи где ты работаешь (сори если было) и как нашел (найти) работу на хаскеле. У меня стойкое ощу… twitter.com/i/web/status/9…
Работаю в #IOHK, участвую в создании PoS-криптовалютной системы (конкретно я сейчас в бэкенд-команде нашего кошельк… twitter.com/i/web/status/9…
22:19Что же касается нужд бизнеса - есть отличное видео об этом: youtube.com/watch?v=ybSBCV…. Это видео от CEO для других CE… twitter.com/i/web/status/9…
22:19@backendsecret Ищу ментора! пишу на Java, пробовал Kotlin, знания базовые + спринг(использовал для авторизации на с… twitter.com/i/web/status/9…11:09
# Вторник 42 твита
@backendsecret Что по-поводу Scala скажешь? Она, субъективно, более популярна, чем Haskell. Порог вхождения ниже, и… twitter.com/i/web/status/9…
Да, она более популярна, и вакансий больше. Порог вхождения - да, ниже: меня уверяли, что любой Джавист способен пе… twitter.com/i/web/status/9…
8:02@kana_its_me @backendsecret А можно для лучшего понимания ещё пример, когда Either используется не как пара ошибка\результат ?
Строго говоря, Either как раз и придумали для того, чтобы представлять пару "ошибка\результат". twitter.com/iflask/status/…
8:05@backendsecret IDE нету, потому что нету денег в сообществе, или как у Scala по техническим причинам, как демаете?
Я думаю, главная причина в том, что в IDE нет такой уж гигантской потребности. Как минимум 95% всех хаскелистов, ко… twitter.com/i/web/status/9…
8:09@backendsecret А как вы без IDE справляетесь со сложностью управления разработкой масштабных проектов? Да, парадигм… twitter.com/i/web/status/9…
Почему-то вспомнилось старое:
8:46Часто слышу мнение, будто сильная статическая типизация ограничивает программиста, тем самым мешая ему. И да, друзь… twitter.com/i/web/status/9…
9:09Но что такое ограничения? Ограничения - это фундамент гарантий. Любая гарантия обусловлена каким-то ограничением, и… twitter.com/i/web/status/9…
9:09Гарантия же в свою очередь порождает уверенность. И сильная статическая типизация как раз и укрепляет нашу уверенно… twitter.com/i/web/status/9…
9:09Обратите внимание: сильная типизация укрепляет нашу уверенность, но не делает её абсолютной. Поэтому в серьёзных Ha… twitter.com/i/web/status/9…
9:09@cblp_su @theaspect @backendsecret IDE нужна чтоб быстро сходить в реализацию функции и вернуться. Поискать все исп… twitter.com/i/web/status/9…
> А главное, пожалуй, это «проект» - т.е. открыл проект, и вот тебе все его файлы в дереве и поиск по ним.
NeoVim… twitter.com/i/web/status/9…
9:26@batyshkaLenin @backendsecret Все говорят - без IDE нельзя,10:18
Все говорят - без IDE нельзя,
А я говорю, что буду
Дискуссия насчёт IDE для Haskell забавляет... Такое впечатление, будто бы мы должны ОПРАВДЫВАТЬСЯ за то, что у нас… twitter.com/i/web/status/9…
11:34Да, можно просто сидеть и плакать, ах, если бы у нас была такая IDE, наша жизнь стала бы такой прекрасной, ой, как… twitter.com/i/web/status/9…
11:34@backendsecret Думаю, пора переходить к той части, ради чего стоит страдать без IDE. Как сейчас модно говорить: "пр… twitter.com/i/web/status/9…
Вероятно, вас удивит мой ответ, но "продавать haskell" кому бы то ни было я не собираюсь. У меня нет такой цели, и,… twitter.com/i/web/status/9…
11:50@backendsecret Никто не просит вас "впаривать", расскажите, в чём профит. Где оно даёт выигрыши и прочие интересные… twitter.com/i/web/status/9…
> расскажите, в чём профит
Первый профит - сильная статическая типизация с выведением типов. Но есть такие, которы… twitter.com/i/web/status/9…
12:01Хорошо, друзья, давайте двигаться дальше, а то, чувствую, дискуссии уже потихоньку превращаются в холивары... Продолжим о практике.
13:29Один из старых мифов касательно Haskell - отсутствие инструментария для проекта и чрезвычайно скудное число библиот… twitter.com/i/web/status/9…
13:29Справедливости ради, в прошлом так оно и было. Голый компилятор, и пара десятков библиотек (со скудной документацие… twitter.com/i/web/status/9…
13:29Сегодня у нас есть Stack, кроссплатформенный инструмент для работы с проектами. Он создаёт пустой проект по заготов… twitter.com/i/web/status/9…
13:29Stack устанавливает нужное нам окружение (в виде компилятора и набора библиотек) таким образом, что на одном компе… twitter.com/i/web/status/9…
13:29Вот сайт: haskellstack.org. Вот репозиторий: github.com/commercialhask…. Устанавливается Stack либо через скрип… twitter.com/i/web/status/9…
13:29Stack - относительно молодой инструмент, релизнулся он летом 2015 года. Его активная разработка продолжается, основ… twitter.com/i/web/status/9…
13:29И, строго говоря, Stack - не единственный подобный инструмент, однако именно он завоевал наибольшую популярность у Haskell-команд.
13:29Подчеркну: Stack не идеален. Конечно, сегодня он лучше, чем был 2 года назад, однако иногда он тупит. Например, вын… twitter.com/i/web/status/9…
13:29@backendsecret Раскажите пожалуйста про альтернативы Haskell Stack
Cabal. Его сайт: haskell.org/cabal/.
Собственно, с него всё и началось, этот инструмент значительно старше St… twitter.com/i/web/status/9…
13:47Есть, правда, ещё один способ принести Haskell на свой компьютер. Называется Haskell Platform (… twitter.com/i/web/status/9…
13:50Кстати, кто желает подробностей - вот моя заметка про Stack, на сайте нашего сообщества: ruhaskell.org/posts/utils/20…
13:53@backendsecret почему не idris?
Потому что Idris и близко не готов к продакшену в той мере, в какой готов Haskell. twitter.com/H311oWorld/sta…
17:36@backendsecret, а хаскелл только для бекенда хорош или есть ещё области применения?
Вот исследование, подробно отвечающее на этот вопрос: github.com/Gabriel439/pos…. Там области перечислены, и рассказан… twitter.com/i/web/status/9…
18:51Ну и раз уж сегодня был упомянут Stack, то нельзя не упомянуть и Stackage. А для начала краткий экскурс в историю.
20:22В 2008 году появился Hackage, репозиторий Haskell-пакетов. Название Hackage происходит от "Haskell" и "package". По… twitter.com/i/web/status/9…
20:22И всё было бы хорошо, но существовала проблема с зависимостями. Суть её предельно проста: мой проект зависит от пак… twitter.com/i/web/status/9…
20:22И вот создатели Stack предложили решение этой проблемы, так появился Stackage. Название происходит от "Stable Hacka… twitter.com/i/web/status/9…
20:22Таким образом, если пакеты А, Б и В включены в стабильный список, то упомянутой ранее проблемы с зависимостями не б… twitter.com/i/web/status/9…
20:22Каждый стабильный список пакетов, называемый LTS Haskell, имеет свою версию. Аббревиатура LTS происходит от Long Te… twitter.com/i/web/status/9…
20:22Примерно раз в неделю выходит новый список. Вот пример такого списка, версии 10.9: stackage.org/lts-10.9. Список… twitter.com/i/web/status/9…
20:22Затем в конфигурационном файле проекта указывается версия используемого LTS Haskell. И, как вы уже поняли, стабильн… twitter.com/i/web/status/9…
20:22Такой подход сильно помогает в командной разработке. Пока у всех членов команды один и тот же LTS Haskell, их проек… twitter.com/i/web/status/9…
20:22А когда в команду приходит новый человек, он клонирует репозиторий проекта, а затем выполняет лишь две команды:
1.… twitter.com/i/web/status/9…
20:22Разумеется, я могу установить и такой пакет, который не входит в конкретный LTS. Однако в этом случае гарантий совм… twitter.com/i/web/status/9…
20:22Кстати, вот он, полный список пакетов в Hackage: hackage.haskell.org/packages/
20:27@backendsecret в тему этой недели, закончил цикл статей про связь формальной логики и ЯП. Написано очень по-дилетан… twitter.com/i/web/status/9…23:14
@cblp_su @backendsecret Прилетело очень в тему: twitter.com/Harenome/statu…23:15
# Среда 42 твита
@backendsecret Кагбэ да, однако так ли легко бизнесовые требования замоделировать без глобального разделяемого сост… twitter.com/i/web/status/9…
> так ли легко бизнесовые требования замоделировать без глобального разделяемого состояния?
А я и не говорил, что… twitter.com/i/web/status/9…
10:13@backendsecret И получается дешевле (по деньгам и срокам) сделать спагетти с глобальным стейтом, чем раскладывать в… twitter.com/i/web/status/9…
Опять же, всё зависит от проекта.
Если это проект, который изначально задуман как времянка, и его нужно сделать ка… twitter.com/i/web/status/9…
10:52@backendsecret Беда в том, что 4 стейкхолдера собравшись на митинг всё равно опишут только 20-50%% очевидных кейсов… twitter.com/i/web/status/9…
> И пойдешь все свои строгие типы на корню переделывать после первого столкновения с реальностью.
Вполне возможно.… twitter.com/i/web/status/9…
10:58Топишь за язык, будь добр оправдывайся и за IDE. Или зачем вы тут вообще? twitter.com/backendsecret/…
> Или зачем вы тут вообще?
Рассказывать об использовании языка. А не оправдываться за то, что для него нет каких-т… twitter.com/i/web/status/9…
11:32@backendsecret Поставим вопрос по другому :)
Есть ли ограничения или сложности в практическом (как оперативном, так… twitter.com/i/web/status/9…
> Есть ли ограничения или сложности в практическом ... использовании ФП с различными методологиями: MSF, RUP, гибки… twitter.com/i/web/status/9…
12:06@backendsecret раз уж об отличиях - известна в мире хоть одна хаскеллист-женщина? (никакого сексизма! чистый интерес)))
Да. И не одна. Например, вот доклад "Haskell is Not For Production and Other Tales" (youtube.com/watch?v=mlTO51…). Он о… twitter.com/i/web/status/9…
12:13@backendsecret Недавно вышла хорошая книжка pragprog.com/book/swdddf/do…. Читается на одном дыхании, как по теме моделир… twitter.com/i/web/status/9…13:38
А вот, кстати, ещё одна прекрасная представительница хаскелистов: youtube.com/watch?v=B19WKs…. Рассказывает о реалиях п… twitter.com/i/web/status/9…
14:11@backendsecret отлично. Кстати, смотрели в сторону ЯП Swift? Видно, что его делали с оглядкой на ФП. Есть и высшие… twitter.com/i/web/status/9…
Да, Swift впитал в себя дух ФП, это видно даже в синтаксисе. Но сам я не работал с этим языком, поэтому прокомменти… twitter.com/i/web/status/9…
14:16@backendsecret боюсь пробовать хаскелл именно потому что в докладах всё ахриненно круто, а в жизни столкнусь с труд… twitter.com/i/web/status/9…
> в жизни столкнусь с трудностями
Конечно столкнёшься! Да, ФП помогает избежать многих проблем, но не всех. И на H… twitter.com/i/web/status/9…
14:45Но по своему опыту могу сказать: столкновение с трудностями помогло мне снять розовые очки, но ничуть не оттолкнуло меня от ФП-парадигмы.
14:50@backendsecret Реквестирую трудностей - первый пример с Хаскель-кодом хорошо зашёл, но монады в нём зашли похуже.
Н… twitter.com/i/web/status/9…
> Реквестирую трудностей - первый пример с Хаскель-кодом хорошо зашёл, но монады в нём зашли похуже.
Монады - это… twitter.com/i/web/status/9…
15:00"Всякий раз, когда кто-то называет функциональный объект функтором, где-то в мире умирает математик..." (C)
К чему… twitter.com/i/web/status/9…
15:43@backendsecret Да функтор это жеж прост класс в си-крестах с перегруженными круглыми скобками.
Ну или лямбда там.… twitter.com/i/web/status/9…
НЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕТ! Зачем, зачем ты сделал это?! Ведь только что ещё один представитель математического сообществ… twitter.com/i/web/status/9…
16:13@backendsecret Ну если я аппликацию на хомяках и орешках под бутылочку стаута смог объяснить, то и монады с каким-нибудь зельем смогу17:01
@backendsecret Я правилно понял, что монада, это интерфейс, с правилами реализации, для которого есть синтаксический сахар в haskel?
Не спрашивайте, пожалуйста. Объяснение будет позже. Если я решусь на это. И не могу обещать, что решусь-таки... :-) twitter.com/zysyg/status/9…
17:02@skv_nskv @backendsecret Вот тут то типы и нужны, можно понять, что чепуха получается, пока ещё тонны кода не написаны.
Золотые слова! twitter.com/qnikst/status/…
18:51@backendsecret Наша дружная команда очень нуждается в PHP разработчике (уровень middle)
по уровню , по ключевым на… twitter.com/i/web/status/9…
Спрашивать о PHP-разработчике на Haskell-неделе... Это похоже на подкол. :-) twitter.com/abystrova1/sta…
18:52Друзья! В один инновационный проект, а именно "Лига ЖКХ" требуются программисты. PHP, PostgreSQL и вот это вот все.… twitter.com/i/web/status/9…20:36
@backendsecret Денис, а что скажете про TDD и Haskell есть ли профит от такого союза?
TDD - это ведь Type Driven Development, верно? От такого союза самый что ни на есть профит! :-)
Если же под TDD по… twitter.com/i/web/status/9…
22:02@backendsecret @ditansu На самом деле паттерны программирования в Haskell есть. Но это скорей здравый смысл и часто… twitter.com/i/web/status/9…23:27
Ну что, отдохнули от монад?
15:06Как я пытаюсь изучать хаскель coub.com/view/13ka5l15:27
Ну раз отдохнули...
15:31is.gd/4qRRRy Функциональное программирование - Ярон Мински, Анил Мадхавапедди и Джейсон Хикки - Программ… twitter.com/i/web/status/9…
15:31Функциональное программирование - Ричард Уорбэртон - Java 8 Lambdas: Functional Programming for the Masses / Лямбда… twitter.com/i/web/status/9…
15:32[Computer Science Center] Функциональное программирование на языке Haskel [2015, RUS] is.gd/W9CVQb видео
15:37Душкин Р.В. - Альманах Конкурсы по функциональному программированию за 2013 год [2014, PDF/DjVu, RUS] is.gd/4ysopT
15:37Душкин Р.В. - Альманах Конкурсы по функциональному программированию за 2012 год [2013, PDF/DjVu, RUS] is.gd/QVDOYy
15:37Душкин Р.В. - Альманах Конкурсы по функциональному программированию за 2011 год [2012, PDF/DjVu, RUS] is.gd/eo92jJ
15:37ищу разработчика Python в #Таганрог (#Краснодар или #Ростов или ещё где тоже устроит) как-раз за такие деньги. Ау?!! twitter.com/belliht/status…15:42
Городняя Л. В. - Основы функционального программирования [2004, PDF, RUS] is.gd/u4HLgN
15:44Мартин Одерски - Принципы функционального программирования на языке Scala / Functional Programming Principles in Sc… twitter.com/i/web/status/9…
15:50Функциональное программирование - Бёрд Р. - Жемчужины проектирования алгоритмов. Функциональный подход [2013, PDF,… twitter.com/i/web/status/9…
15:50[TechDays] Практическое функциональное программирование на F# от облачного- и веб-программирования до телефона и иг… twitter.com/i/web/status/9…
15:50[CompSciCenter.ru / lektorium.tv] Функциональное программирование (Haskell) [2012, RUS] is.gd/EZOtha видео
16:21Сошников Д. - Функциональное программирование на F# [2011, PDF, RUS] is.gd/GIsjyx
16:21Больше не буду. Профессор по ФП возмущается пиратским книжкам.
16:21А может у вас есть вакансии? Давайте, поретвичу!
16:45@backendsecret если можно, спасибо twitter.com/GosuAi/status/…17:07
@backendsecret Мы вот в Гамбург сисадмина ищем innogames.com/ru/innogames-r…17:07Помогают с переездом, команда дружная, работы море.
# Четверг 50 твитов
@backendsecret Монада это способ работы с данными внутри вычисляемого контекста, таким образом, чтобы можно было из… twitter.com/i/web/status/9…
Хорошее объяснение. Однако понять его с функтором и аппликативом будет проще, ведь это последовательные шаги: аппли… twitter.com/i/web/status/9…
10:21@is_a_cdr @backendsecret @ditansu Исключения в Хаскеле есть (причем это чуть ли не единственный язык, где можно уби… twitter.com/i/web/status/9…10:23
@rybak_andrey @is_a_cdr @backendsecret @ditansu Т.е. ghc, действительно, хитрый и хорошо оптимизирует? Вложенные тр… twitter.com/i/web/status/9…
Да, GHC очень хорошо оптимизирует. twitter.com/Kevroletin/sta…
14:44@borovikov @backendsecret github.com/qnikst/irc-sim… вот что-то такое за вечер получилось. Сам чятик в src/Server.hs… twitter.com/i/web/status/9…17:16
@dcromster @PIlIGRIM @backendsecret @bobuk да, Бобука вести это хорошая мысль. Хоть передохнём от Хаскеля.
Потерпи меня ещё 3 денька... twitter.com/jbaruch/status…
18:40завтра буду топить коллегам за функциональное программирование и чем больше пытаюсь подготовиться, тем меньше поним… twitter.com/i/web/status/9…
Суть ФП не в монадах же, и даже не в функторах. :-)
Скажи, что суть программирования в принципе - это абстракция и… twitter.com/i/web/status/9…
19:48@backendsecret Когда понял монады и используешь их pic.twitter.com/y314nfQXRC19:49
@backendsecret ...И ФП прекрасно подходит как для первого, так и для второгоА есть где-то методические рекомендац… twitter.com/i/web/status/9…
Есть. Называется опыт. Взять, попробовать, и убедиться. :-)
Я перешёл в ФП не потому, что мне кто-то показал супер… twitter.com/i/web/status/9…
20:32@qnikst @backendsecret Хаскелисты Всея Руси и Дальнего Востока!Какими пользуетесь/собираетесь пользоваться ORM, Ф… twitter.com/i/web/status/9…
Для начала:
20:43miso, правда, исключение, но я скопировал за компанию. :-)
20:44Ещё про БД:
- hackage.haskell.org/package/rocksd…
- hackage.haskell.org/package/mongoDB
- hackage.haskell.org/package/acid-s…
Но есть и другие: hackage.haskell.org/packages/#cat:…
20:52@backendsecret У нас тоже есть вакансии) xapix.io, Берлин, поможем с переездом и с blue card. Clojur… twitter.com/i/web/status/9…11:56
@backendsecret У меня целый канал в тг с айтишников (в основном) вакансиями заграницей :) t.me/jobs_abroad11:56
@backendsecret В Питер и не только нужны backend/frontend разработчики, подробности vk.com/sidenisru?w=wa…11:56
@amureki @backendsecret есть скала, флинк, кафка, го, руби, эликсир, много си, даже ангуляр, а питона нет)11:57
@backendsecret А куда податься человеку без опыта с базовыми знаниями Java, C/C++ и большим желанием учиться?11:57
@backendsecret И меня! И меня! Харьков\Киев pic.twitter.com/54GmRmxtUn11:57
@backendsecret Ищем в Backend команду Wheely разработчиков (wheely.workable.com/jobs/670161) и системного инженера (… twitter.com/i/web/status/9…11:57
@backendsecret Ищем java разработчиков senior+ Alibaba group: Aliexpress, Tmall. В Москву или Ханчжоу11:57
@backendsecret А мы ищем java разработчика в отличную команду в Питер spb.hh.ru/vacancy/251252…11:57
@backendsecret Мы ищем рубистов в adjust. С релокейтом в Берлин помогаем. Куча работы, есть интересные проекты, eli… twitter.com/i/web/status/9…11:57
@backendsecret Мы финтех-стартап (уже большой)11:58
Ищем java/scala в бэкенд, kotlin в android, swift в iOS
Сейчас уже е… twitter.com/i/web/status/9…
@backendsecret Может кто из Нижнего Новгорода m.hh.ru/vacancies?empl… а ещё web dev'ы нужны от 2 тысяч.11:58
@backendsecret Senior Java developer в fintech, Москва hh.ru/vacancy/243524…11:58
@backendsecret Уже 5 лет работаю в замечательной @funbox_team и нам нужны хорошие коллеги:11:58Erlang:… twitter.com/i/web/status/9…
@backendsecret Ищем back-end/front-end людей в Bielefeld: PHP7, Angular1, Yii1/2. Небольшая контора в 20 человек и… twitter.com/i/web/status/9…11:58
@backendsecret Ищем iOS и Android разработчиков в Мюнхен. Помогаем с визой.11:59
linkedin.com/jobs/view/5908…… twitter.com/i/web/status/9…
Наверняка у всех есть лишнии вычислительные мощности. Предлагаю их утилизировать на благо светлого будущего. А майн… twitter.com/i/web/status/9…
12:18Естественно это не просто так. Есть шанс получить 1000 usd или 10000 usd учавствуя в проекте… twitter.com/i/web/status/9…
12:18Конечно таких проектов много. Например, один из самых старых и известных, Seti@home. Помню как учавствовал в нём на… twitter.com/i/web/status/9…
12:25Есть подобный по расчёту белка и другие. Все они работают на основе BIONIC boinc.berkeley.edu/projects.php
12:25@backendsecret Таллин, энергичный быстрорастущий стартап, на 25%+ русскоязычная Европа со всеми её плюшками - от "с… twitter.com/i/web/status/9…12:32
@backendsecret @verwolfdotss Перепись IT-поросяток
Хм, кажется это оскорбление. twitter.com/sorx00/status/…
12:33@VsSekorin @backendsecret Пока открытых проектов нет, но в планах кое что имеется) Если есть хорошее понимание фп,… twitter.com/i/web/status/9…12:36
@backendsecret Senior front-end Ростов-на-Дону(100К+) -JavaScript, HTML, CSS, Node.js, Webpack и соврменные JS фрей… twitter.com/i/web/status/9…12:44
Кстати ещё: кто смелый и хочет провести неделю этого акаунта?
Очень хотелось бы из геймдева, сжатия данных, ML/AI,… twitter.com/i/web/status/9…
Что имел ввиду про парикмахера: youtube.com/watch?v=xiwD6B…
Это моя любимая песня, когда ищу работу. :D
@backendsecret Ищу Java и JS девелоперов в почту Эстонии! Это та, у которой роботы по городу почту развозят.12:48
Нужен… twitter.com/i/web/status/9…
@backendsecret нужен спец в питоне для поддержки и доработок odoo (open erp ранее), географически - Сколково или на… twitter.com/i/web/status/9…13:30
@batyshkaLenin @dcromster Лишь монад требуют наши сердца17:16
Лишь монад требуют наши глаза,
В нашем смехе и в наших сле… twitter.com/i/web/status/9…
@backendsecret ищем backend-разработчиков в retailcrm.ru (крупная CRM для ecommerce). Мск/Воронеж/Липецк… twitter.com/i/web/status/9…17:16
@backendsecret Ищем в офис angular и python разработчиков. Казань 💚 Добра всем ретвитнувшим #твиттерпомоги17:17
@backendsecret На всякий случай напомню, что если прислать объявления о работе (даже дворником) с релокацией мне, т… twitter.com/i/web/status/9…17:17
Ну и у нас набирают (CC: @backendsecret):17:17
@backendsecret Самара, ищем backend (в основном java), frontend и implementation engineer.18:10
чем мы занимаемся, напис… twitter.com/i/web/status/9…
Кого хотите позвать повторно из ведущих @backendsecret ?
18:51Всё всё всё! Про Егора я понял!
Может ещё кого? ;)
А теперь вопрос, что лучше твиттер лекции @5HT или @backendsecret ? :-)
А у нас без матов!* twitter.com/5HT/status/979…
20:04@suxxes @backendsecret @abroadunderhood Привет! Зарепость, пожалуйста: twitter.com/oruen/status/9…23:11
# Пятница 39 твитов
@qnikst @backendsecret Воооот! 😀
Можете, когда хотите )Давай дальше: как собираете и деплоите веб-проект?
Похапеш… twitter.com/i/web/status/9…
> Давай дальше: как собираете и деплоите веб-проект?
Похапешники выкладывают горой файлы, жависты собирают war/ear.… twitter.com/i/web/status/9…
Друзья, прошу прощения, если сегодня буду отвечать не сразу. Задачку доделать нужно важную...
10:12"Что такое монады: заблуждение из мира Haskell": ruhaskell.org/posts/theory/2….
Это к вопросу о монадах...
11:05@zhulikgleb @backendsecret В Haskell можно сделать тоже самое. (Только статическое ядро надо, в erlang VM играет ег… twitter.com/i/web/status/9…11:59
@backendsecret @AstarothAst Если что, то nix-ом можно собирать docker контейнеры, нету лишнего мусора в истории док… twitter.com/i/web/status/9…12:02
Обращаюсь к присутствующим здесь любителям обобщения...
Друзья, если я не могу ответить на ваши вопросы (так, как… twitter.com/i/web/status/9…
12:08Нужно было сказать это сразу, но скажу сейчас. Я не эксперт. Ни в Хаскеле, ни в бэкенде. Здесь, как вы успели замет… twitter.com/i/web/status/9…
12:08@russianlagman @backendsecret А почему он должен отличаться? Мы ж не инопланетяне какие, чтобы все по своему делать.
Золотые слова! Нет, бриллиантовые!! twitter.com/qnikst/status/…
12:09Пятничное. Весёлая песня про языки и вот этот вот всё: youtu.be/cdX8r3ZSzN4
14:30@kreshikhin @backendsecret @ChShersh @cblp_su похоже тут коней и людей в миксер засунули и пушками приправили...14:46
@qnikst @backendsecret @ChShersh @cblp_su Ок, понял ребята.У вас тут секта походу, не буду в вашу гей-компанию со… twitter.com/i/web/status/9…
Да, так проще всего выйти "победителем" из дискуссии. twitter.com/kreshikhin/sta…
14:50@kreshikhin @backendsecret @ChShersh @cblp_su ФП это про способ конструирования программ, вот не уверен, что я смог… twitter.com/i/web/status/9…15:16
@jbaruch @dcromster @PIlIGRIM @backendsecret @bobuk А что, именно от Haskell нужна передышка, а от Java/C++/PHP/Nod… twitter.com/i/web/status/9…17:51
@Yurrist @backendsecret В виде методических рекомендаций то есть.
Это когда рекомендуют некоторые методы для решен… twitter.com/i/web/status/9…
1. fpcomplete.com/blog/2016/11/e… - рекомендации по исключениям.
19:27@skv_nskv @backendsecret Много кто сделал много чего. Мой личный вклад тоже доступен онлайн:19:45
reddit.com/r/haskell/comm…
Вот простейшее решение на Haskell.
Одна идея - один тип. 2 версии + 2 представления = 4 способа создать IP-адрес.… twitter.com/i/web/status/9…
21:49Использовать это будем так:
main = print $ IPv4Bytes 127 0 0 1
или так:
main = print $ IPv6String "::1"
Нам не… twitter.com/i/web/status/9…
21:49Благодаря `deriving Show` мы сразу получаем возможность отображать IP-адрес в виде стандартной строки (например, при печати адреса в лог).
21:49А благодаря `deriving Eq` и `deriving Ord` мы можем сравнивать адреса друг с другом, а также использовать их, напри… twitter.com/i/web/status/9…
21:49Разумеется, друзья, этот пример сугубо искусственный. В реальном проекте мы с вами конечно возьмём какую-то готовую… twitter.com/i/web/status/9…
21:49@backendsecret Что за дичь я прочел? Какая разница что тащить с билд-сервера на прод? Jar или exe. Уже второй месяц… twitter.com/i/web/status/9…
Разница хотя бы в том, что на прод-серваке в этом случае не нужно иметь ни компилятор, ни интерпретатор, ни Хаскель… twitter.com/i/web/status/9…
21:56Ну что ж, друзья, по моим часам (в Армении GMT+4) уже за полночь, а это значит, что рабочая неделя закончилась. А п… twitter.com/i/web/status/9…
23:16История про то, как видеотрансляция приземления Чарльза Симони, автора венгерской нотации, ставшего пятым космическ… twitter.com/i/web/status/9…
23:16Ну и кстати, мы ищем разрабов ams-ix.net/about/careers-…11:48
@backendsecret а ретвитни про поиск .net в Питере. spb.hh.ru/vacancy/241659… Свой реально используемый продукт, прост… twitter.com/i/web/status/9…12:27
@vkozulya @backendsecret Быть токсичным мудаком неотъеблимое право любого разработчика. Главное им не злоупотреблять.13:04
Вопрос к @dcromster, @vvn33 и всем читателям @backendsecret. Какие коллективные твиттер аккаунты на английском вы знаете? Они существуют?14:30
@alan_ko @dcromster @vvn33 @backendsecret и вообще по хэштегу #rocur14:41
А теперь вопрос, что лучше твиттер лекции @5HT или @backendsecret ? :-)
Ну как же так? twitter.com/5HT/status/979…
16:34Продолжая тему расшаривания ресурсов:
Может знаете такой сервис чтобы расшаривать файловое место за денюжку?
@backendsecret @Arhelmus filecoin?17:12
@backendsecret @alan_ko @dcromster @vvn33 Вполне существуют. Примеры не IT, но вполне действующие: @SmallholderIRL и @SmallholdersUK :)17:12
MaidSafe habrahabr.ru/post/237193/
17:15А есть кто на Rust пишет?
18:24# Суббота 70 твитов
Итак, история. В 2007 году в космос собрался очередной миллионер, Чарльз Симони. И его приземление (на полигоне в К… twitter.com/i/web/status/9…
0:21С технической точки зрения задумка была в следующем. Специализированный джип, со спутниковой антенной на крыше, дол… twitter.com/i/web/status/9…
0:21А после этого они должны были сделать следующее: используя спутниковую антенну, навести её на нужный геостационарны… twitter.com/i/web/status/9…
0:21Сказано - сделано. В качестве упомянутого джипа выбрали гражданский Hummer. Заключили договор с компанией, занимавш… twitter.com/i/web/status/9…
0:21Станция связи, которую планировали поставить на крышу джипа, представляла собой автоматическую тарелку диаметром 1.… twitter.com/i/web/status/9…
0:21Далее в блок вводятся координаты и идентификатор нужного спутника (или, как это ещё называется, борта). Спутник гео… twitter.com/i/web/status/9…
0:21Далее нажимается одна кнопка - и антенна автоматически открывается, поворачивается в правильном направлении, точно… twitter.com/i/web/status/9…
0:21А из-за того, что в контроллере был электронный компас, азимутальный угол поворота антенны не зависел от положения… twitter.com/i/web/status/9…
0:21Иными словами, персоналу джипа там, на полигоне, нужно было просто включить питание антенны, нажать на кнопку Пуск,… twitter.com/i/web/status/9…
0:21В день Икс машина отправилась в путь. Найдя капсулу и убедившись, что с космонавтами всё хорошо, мужики включили пи… twitter.com/i/web/status/9…
0:21Останавливается там, пытается найти нужный спутник, разумеется, не находит его (потому что каждый геостационарный б… twitter.com/i/web/status/9…
0:21Понимаете, да? То есть антенне нужно было повернуться, условно, на 86 градусов влево, а она ушла на 86 градусов впр… twitter.com/i/web/status/9…
0:21Мужики в панике. Там же в ЦУП ждут, делегация, пресса. Они нажимают кнопку Сложить, антенна послушно сложилась. Пер… twitter.com/i/web/status/9…
0:21В общем, не пашет. К счастью, мужики примерно знали ту точку небосвода, где расположен нужный спутник. Развернули д… twitter.com/i/web/status/9…
0:21В итоге, используя глаза, компас, координаты и, по всей видимости, весь набор русских матерных слов, мужики, после… twitter.com/i/web/status/9…
0:21Потом, конечно, начали ругаться и разбираться. Возмущение можно было понять: представители компании-разработчика кл… twitter.com/i/web/status/9…
0:21Начали копать глубже. И выяснили, что причиной сбоя стала ошибка в программе внутри контроллера. Одна-единственная… twitter.com/i/web/status/9…
0:21Да, друзья, из-за моей глупой ошибки понервничали и те мужики на полигоне, и другие мужики в ЦУПе. А ошибка была де… twitter.com/i/web/status/9…
0:21Но ведь у нас-то всё действительно работало! Почему же там не заработало? А всё просто. Тогда, в 2007 году, я ещё н… twitter.com/i/web/status/9…
0:21И потому версии прошивки контроллера хранились у меня на рабочем столе, в отдельных папках. В папках, Карл! И назыв… twitter.com/i/web/status/9…
0:21Как меня тогда не уволили - не знаю. Но не уволили, простили. Поэтому, друзья, системы контроля версий - это хорошо.
0:21Так, коллеги, а время-то у нас уже пол-третьего! Пойду-ка я отдыхать, а то детки завтра рано прибегут, родителей будить... :-) До завтра.
1:27Друзья! Выходные у меня обычно уделяются семье, а потому за компьютером бываю редко. Поэтому прошу считать мою неде… twitter.com/i/web/status/9…
8:17Прошу прощения, если мой тон был резким, или выводы слишком скоропалительными, или ответы слишком слабыми.
8:17И выражаю громадную благодарностью @qnikst, @ChShersh и @cblp_su за помощь в дискуссиях. Я знаю, что любой из вас п… twitter.com/i/web/status/9…
8:17Впрочем, ещё что-нибудь напишу, но уже так, урывками.
8:19Немного ссылок.
8:261. conf.researchr.org/home/icfp-2018 - ICFP сего года (крупнейшая ФП-конфа в мире).
8:351. @haskellbook - Haskell programming from first principles.
8:411. github.com/denisshevchenk… - компании, использующие ФП, малый список.
8:441. functional.works-hub.com - место, где искать ФП-вакансии.
8:49Минутка спорта, друзья: youtube.com/watch?v=p5obID…
9:48@qnikst @dcromster @backendsecret @ChShersh @cblp_su Надоели хаскелисты, хочется про докер и рельсы почитать наконец!12:29
@backendsecret а когда новый выпуск бананов и линз будет?
Подкаст давно умер. Мы поняли, что подкастом должен кто-то заниматься, плотно и постоянно. Никто из нас не был гото… twitter.com/i/web/status/9…
12:53А вы заниметесь менторством? Если да, то расскажите каким.
11:00@backendsecret Однажды во мне в лс постучался джун с просьбой поменторить. Вроде, нормально пообщались пару часов,… twitter.com/i/web/status/9…11:18
@backendsecret Другу подкидываю всякие материалы по программированию. Помогаю, чем могу.11:18
@backendsecret Хороший опыт, впрочем, тоже есть. Обучаю периодически людей с непрофильным образованием алгоритмам и структурам данных.11:18
@backendsecret Есть знакомые, которые работают в одиночку в фирмах и кроме, как у меня не у кого спросить экспертизу.11:19
@backendsecret Я думаю все же надо помогать всем, кто плохо разбирается в теме, так как однажды ты сам напоришся на… twitter.com/i/web/status/9…
👍🏻 twitter.com/glitterOfHyad/…
11:26@backendsecret А в этом твите можно ментора найти?11:35
@backendsecret Руковожу дипломниками.11:35
@backendsecret Преподаю и стараюсь писать статьи в гитхаб, надеюсь соберу в бесплатный курс хороший11:39
@backendsecret Интересуют технологии бекенда. Не хочу становиться формошлёпом. Учусь типо на программиста. Нужен че… twitter.com/i/web/status/9…
Поможем Александру? twitter.com/elephmoon/stat…
11:48@elephmoon @backendsecret А можно и мне тогда?11:56
Точнее я хотел бы чтобы кто-то смог оценить уровень моих знаний, ука… twitter.com/i/web/status/9…
@elephmoon @backendsecret +1, тоже интиресно было бы ментора найти, работаю в основном с PHP / Laravel есть небольш… twitter.com/i/web/status/9…12:38
@backendsecret Python , algorithms, mmds12:55
@backendsecret @elephmoon Это будет очно в Харькове в офисе компании.13:02
Пока точных дат старта нет, но старт +- через… twitter.com/i/web/status/9…
@backendsecret @elephmoon Вот детали курса:13:22
Go с нуля, много практики, с углублением в конкурентность, возможно, ко… twitter.com/i/web/status/9…
@backendsecret Помогаю менее опытным прокачивать навыки разработки отказоустойчивых решений, тех. дизайна решений,… twitter.com/i/web/status/9…15:04
@backendsecret Преподаю веб-разработку компьютерным лингвистам в ВШЭ несколько лет, планирую создать онлайн-курс на… twitter.com/i/web/status/9…15:04
@backendsecret А зачем менторить вообще надо?15:04
Лучший ментор - книги и гугл, всё нужное есть в открытом доступе.
@backendsecret @blazernere Именно так, или наземными ж.д. Раздвинуть шоры, я вижу как джуны часто пытаются решать п… twitter.com/i/web/status/9…15:31
@blazernere @backendsecret Слишком много ненужного вокруг. В этом и смысл, чтобы отсеять нужное от ненужного. Зачем… twitter.com/i/web/status/9…15:31
@backendsecret Да, помогал знакомым и знакомым знакомых.15:35В целом - интересный опыт.
@backendsecret Маленькой компании трудно соревноваться на рынке труда с крупными игроками. Поэтому беру новичков с… twitter.com/i/web/status/9…16:59
@backendsecret Python, C#/.NET Core, Erlang, Typescript, OCaml20:27
@backendsecret Ищу ментора, интересует python, Django, database, бэкэнд, Java.20:27
@backendsecret как хобби:20:27
@elephmoon @backendsecret могу подсобить с самоопределением. как раз свободный вечер выдался, если интересно, то жд… twitter.com/i/web/status/9…20:28
@backendsecret Когда учился в универе бесплатно преподавал первокурсникам C++, помню долго делал слайды в поверпоинте, жаль не сохранились20:34
@elephmoon @backendsecret раз уж такая песня пошла, то мой мейн - это JavaScript(TS, CS, YoptaScript:D), тут любые… twitter.com/i/web/status/9…20:40
@elephmoon @backendsecret но действительно буду рад пообщаться по фронту20:44
тут мои Angular(4/5), Backbone.js, Vue.js,… twitter.com/i/web/status/9…
@blazernere @badzelenkoff @backendsecret Менторство для дятлов, если человек не может сам разобраться, то есть комм… twitter.com/i/web/status/9…21:09
@elephmoon @backendsecret ну и кому интересен фронтенд в финансовой сфере(обменники, банки, площадки) или кто уже р… twitter.com/i/web/status/9…21:10
@backendsecret Ищу ментора, который объяснит как правильно проходить собеседования.
Ох, тут скорее психолог нужен, чтобы потом психотерапевт не понадобился. twitter.com/chikiro_twi/st…
21:39@flud3r @backendsecret @blazernere @badzelenkoff Видел таких менторов, которым не то что менторить, их к комплюхтор… twitter.com/i/web/status/9…21:54
@backendsecret менторство это полезно, но только когда человек понимает что хочет и готов к этому стремиться... в и… twitter.com/i/web/status/9…21:55
@backendsecret Вдруг и я найду себе старшего товарища, nodejs, vuejs. В идеале поделал бы таски для практики. Под присмотром, разумеется)22:08
@chikiro_twi @backendsecret вроде вполне есть книжки типа programming interviews exposed где в начале именно про пр… twitter.com/i/web/status/9…22:08
# Воскресенье 25 твитов
Напоследок, друзья, поделюсь ссылками на некоторые Haskell-библиотеки, которые, на мой взгляд, достойны внимания бэ… twitter.com/i/web/status/9…
16:46hackage.haskell.org/package/cassava - работа с CSV
hackage.haskell.org/package/aeson - работа с JSON
hackage.haskell.org/package/yaml - работа с Y… twitter.com/i/web/status/9…
hackage.haskell.org/package/time - работа со временем
hackage.haskell.org/package/stm - работа с Software Transactional Memory… twitter.com/i/web/status/9…
hackage.haskell.org/package/servan… - работа с API на уровне типов, серверная часть
hackage.haskell.org/package/servan… - работа с API на у… twitter.com/i/web/status/9…
hackage.haskell.org/package/http-c… - низкоуровневый интерфейс для HTTP-клиентов
hackage.haskell.org/package/amazon… - работа с AWS (семейс… twitter.com/i/web/status/9…
hackage.haskell.org/package/cborg - работа с CBOR (Concise Binary Object Representation)
hackage.haskell.org/package/cereal - бинарная с… twitter.com/i/web/status/9…
hackage.haskell.org/package/QuickC… - автоматическое тестирование (с помощью arbitrary-значений)
hackage.haskell.org/package/HUnit - юнит… twitter.com/i/web/status/9…
hackage.haskell.org/package/random - работа с простыми случайными значениями
hackage.haskell.org/package/random… - работа со случайными зн… twitter.com/i/web/status/9…
hackage.haskell.org/package/direct… - кроссплатформенная работа с файловой системой
hackage.haskell.org/package/filepa… - кроссплатформенна… twitter.com/i/web/status/9…
hackage.haskell.org/package/text - Юникод-текст
hackage.haskell.org/package/bytest… - байтовые строки
hackage.haskell.org/package/contai… - контейне… twitter.com/i/web/status/9…
hackage.haskell.org/package/acid-s… - ACID-гарантии (Atomicity, Consistency, Isolation, Durability) для сериализуемых структур… twitter.com/i/web/status/9…
16:46Друзья! Время моего дежурства в @backendsecret подходит к концу. Ещё раз благодарю всех за внимание, за участие, за… twitter.com/i/web/status/9…
21:33Кому интересно - напоминаю мой аккаунт: @dshevchenko_biz. Если вдруг я не успел ответить на какие-то ваши вопросы -… twitter.com/i/web/status/9…
21:33Кстати, вот наши русскоязычные чаты по Хаскелю:
21:33@alezyyy @backendsecret буду рад помочь/направить/рассказать чего интересного12:15
@chikiro_twi @backendsecret Учитывая количество "технологий" помноженное на разные взгляды интервьюеров, современно… twitter.com/i/web/status/9…
true twitter.com/vgermaniu/stat…
12:15@backendsecret на Coursera назначили ментором на курс алгоритмов Стэнфорда. Но мне все время некогда12:15
@bog3m @elephmoon @backendsecret может вы и мне ментора найдёте?) я вроде не очень глупый12:15
@backendsecret алертнул менторство12:16
борюсь с желанием ворваться, рассказать как не убить дитя своей опекой и тучу пр… twitter.com/i/web/status/9…
@vstavai @backendsecret @elephmoon это от общего опыта и Ваших знаний зависит12:17
как по мне, пакет начинающего nodejs'… twitter.com/i/web/status/9…
@backendsecret Пишу внутреннюю документацию. Считается?12:17
@backendsecret взял зелёную девочку devops стажёром. учу уму разуму.16:27
@backendsecret Учу Питон. Имею математическое образование и хорошие мозги, учусь быстро, объяснять два раза не прид… twitter.com/i/web/status/9…18:30
@backendsecret ищу ментора18:58
Люблю математику. Сейчас изучаю Java (преподают в универе, + осваиваю фреймворк спринг)… twitter.com/i/web/status/9…
Вечер воскресенья... Всем спасибо! Надеюсь отдохнули от монад :) С вами был куратор (не модератор!;) @dcromster. Ес… twitter.com/i/web/status/9…
20:24# Ссылки
www.youtube.com
- https://www.youtube.com/watch?v=ybSBCVhVWs8
- https://www.youtube.com/watch?v=mlTO510zO78
- https://www.youtube.com/watch?v=B19WKsmhhaY
- https://www.youtube.com/watch?v=p5obIDcThsA
- https://www.youtube.com/watch?v=xiwD6BSfiv4
hackage.haskell.org
- https://hackage.haskell.org/packages/
- http://hackage.haskell.org/package/warp
- http://hackage.haskell.org/package/servant
- http://hackage.haskell.org/package/scotty
- https://hackage.haskell.org/package/rocksdb-haskell
- https://hackage.haskell.org/package/mongoDB
- https://hackage.haskell.org/package/acid-state
- https://hackage.haskell.org/packages/#cat:Database
- https://hackage.haskell.org/package/cassava
- https://hackage.haskell.org/package/aeson
- https://hackage.haskell.org/package/yaml
- https://hackage.haskell.org/package/time
- https://hackage.haskell.org/package/stm
- https://hackage.haskell.org/package/servant-server
- https://hackage.haskell.org/package/servant-client
- https://hackage.haskell.org/package/http-client
- https://hackage.haskell.org/package/amazonka
- https://hackage.haskell.org/package/cborg
- https://hackage.haskell.org/package/cereal
- https://hackage.haskell.org/package/QuickCheck
- https://hackage.haskell.org/package/HUnit
- https://hackage.haskell.org/package/random
- https://hackage.haskell.org/package/random-fu
- https://hackage.haskell.org/package/directory
- https://hackage.haskell.org/package/filepath
- https://hackage.haskell.org/package/text
- https://hackage.haskell.org/package/bytestring
- https://hackage.haskell.org/package/containers
- https://hackage.haskell.org/package/xeno
- https://hackage.haskell.org/package/xml-conduit-parse
is.gd
- https://is.gd/4qRRRy
- https://is.gd/W9CVQb
- https://is.gd/4ysopT
- https://is.gd/QVDOYy
- https://is.gd/eo92jJ
- https://is.gd/u4HLgN
- https://is.gd/EZOtha
- https://is.gd/GIsjyx
other
- https://www.ohaskell.guide/recursion.html
- https://gist.github.com/denisshevchenko/e9412ff0b84fb3cb0946e099a95df6fa
- https://gist.github.com/blazern/4ca22e170f1311e8e8fd28396d609d0a#gistcomment-2386177
- https://gist.github.com/sigrlami/769f5e6674adbd399f00
- https://haskellstack.org/
- https://github.com/commercialhaskell/stack/
- https://github.com/Gabriel439/post-rfc/blob/master/sotu.md
- https://github.com/qnikst/irc-simple
- https://github.com/denisshevchenko/haskell-in-production
- https://www.haskell.org/cabal/
- https://ruhaskell.org/posts/utils/2015/07/13/from-cabal-to-stack.html
- https://ruhaskell.org/posts/utils/2015/11/25/nix-idea.html
- https://ruhaskell.org/posts/theory/2015/01/20/the-what-are-monads-fallacy.html
- https://www.stackage.org/lts-10.9
- https://pragprog.com/book/swdddf/domain-modeling-made-functional
- https://www.slideshare.net/ScottWlaschin/fp-patterns-buildstufflt
- https://youtu.be/cdX8r3ZSzN4
- https://www.fpcomplete.com/blog/2016/11/exceptions-best-practices-haskell
- https://hackernoon.com/4-steps-to-a-better-imports-list-in-haskell-43a3d868273c
- https://www.reddit.com/r/haskell/comments/6ck72h/functional_design_and_architecture/
- http://fpconf.ru/
- https://fby.by/
- https://conf.researchr.org/home/icfp-2018
- https://zurihac.info/
- https://www.apress.com/gp/book/9781430262503
- https://functional.works-hub.com/
- https://functionaljobs.com/
- https://bananasandlenses.net/
- http://www.haskellcast.com/
- https://gitter.im/ruHaskell/forall
- https://coub.com/view/13ka5l
- http://compscicenter.ru/
- http://lektorium.tv/
- https://www.innogames.com/ru/innogames-rabota/detail/job/linux-system-administrator-system-engineer/
- http://xapix.io/
- https://t.me/jobs_abroad
- https://vk.com/sidenisru?w=wall-145527688_110%2Fa2d24b2342574020a6
- https://wheely.workable.com/jobs/670161
- https://spb.hh.ru/vacancy/25125230
- https://spb.hh.ru/vacancy/24165997
- https://m.hh.ru/vacancies?employer_id=1034343
- https://hh.ru/vacancy/24352499
- https://www.linkedin.com/jobs/view/590821926
- https://boinc.berkeley.edu/projects.php
- https://www.mersenne.org/download/
- https://m.youtube.com/watch?v=1gI_HGDgG7c
- http://retailcrm.ru/
- https://www.tweag.io/posts/2018-03-29-we-are-hiring-swe.html
- https://ams-ix.net/about/careers--2
- http://backendsecret.ru/
- https://ufa.hh.ru/employer/1736538
- http://gay.ru/
- https://storj.io/share.html
- https://habrahabr.ru/post/237193/