Forwarded from Дашбордец
Полезно, конечно, учиться на своих ошибках, но лучше их избегать вовсе.
Коллекция предостережений проекта data-to-viz:
https://www.data-to-viz.com/caveats.html
P. S. Сам проект интересен в принципе, в нём также:
-обзор всех типов графиков
-дерево решений на основе формата входных данных;
- сюжетные примеры анализа.
Коллекция предостережений проекта data-to-viz:
https://www.data-to-viz.com/caveats.html
P. S. Сам проект интересен в принципе, в нём также:
-обзор всех типов графиков
-дерево решений на основе формата входных данных;
- сюжетные примеры анализа.
Forwarded from Записки админа
🔎 https://ihateregex.io/ - пачка примеров регэкспов, с объяснением того, как они работают. #линк #regexp
Forwarded from oleg_log (Oleg Kovalov)
Гугловцы опубликовали слайды по Хаскеллу.
Haskell is not one of the internally "blessed" languages, but a dedicated team of volunteers is making use of 20% time to try to make Haskell at Google possible.
(что правильно)
https://github.com/google/haskell-trainings
Собственно 2 пдф (92 и 182 слайда соотв)
https://github.com/google/haskell-trainings/releases/download/v1.0/haskell_101.pdf
https://github.com/google/haskell-trainings/releases/download/v1.0/haskell_102.pdf
Haskell is not one of the internally "blessed" languages, but a dedicated team of volunteers is making use of 20% time to try to make Haskell at Google possible.
(что правильно)
https://github.com/google/haskell-trainings
Собственно 2 пдф (92 и 182 слайда соотв)
https://github.com/google/haskell-trainings/releases/download/v1.0/haskell_101.pdf
https://github.com/google/haskell-trainings/releases/download/v1.0/haskell_102.pdf
GitHub
GitHub - google/haskell-trainings: Haskell 101 and 102: slides and codelabs
Haskell 101 and 102: slides and codelabs. Contribute to google/haskell-trainings development by creating an account on GitHub.
#devops
Не так давно(https://news.1rj.ru/str/overtimehate/401 ) постил тред про матчасть контейнеров, а тут вот и инфографика подъехала!
Не так давно(https://news.1rj.ru/str/overtimehate/401 ) постил тред про матчасть контейнеров, а тут вот и инфографика подъехала!
Forwarded from Evo Dev Club
📼 И сразу добью шикарным докладом 1998 (!!!) года Гая Стила про развитие языков программирования.
Крайне рекомендую посмотреть. Во-первых, любопытно как Стил топит за добавление в Java дженериков (привет, golang) и перегрузки операторов. Во-вторых, сама подача материала - не хочу спойлерить, но форма подчеркивает содержание - программистам всегда нужно строить мелкие абстракции чтобы перебраться на более высокий уровень. И важно сделать это просто.
Ну и отдельный фан увидеть конференцию разработчиков 22 года назад: докладчик в пиджаке, в нагрудном кармане батарея из ручек, слайды на проекторе - обалденно.
https://www.youtube.com/watch?v=_ahvzDzKdB0
P.S. Можете еще почитать о самом Гае Стиле на википедии. Это один из гигантов computer science, и мы стоим на его плечах в том числе
#video
Крайне рекомендую посмотреть. Во-первых, любопытно как Стил топит за добавление в Java дженериков (привет, golang) и перегрузки операторов. Во-вторых, сама подача материала - не хочу спойлерить, но форма подчеркивает содержание - программистам всегда нужно строить мелкие абстракции чтобы перебраться на более высокий уровень. И важно сделать это просто.
Ну и отдельный фан увидеть конференцию разработчиков 22 года назад: докладчик в пиджаке, в нагрудном кармане батарея из ручек, слайды на проекторе - обалденно.
https://www.youtube.com/watch?v=_ahvzDzKdB0
P.S. Можете еще почитать о самом Гае Стиле на википедии. Это один из гигантов computer science, и мы стоим на его плечах в том числе
#video
YouTube
Growing a Language, by Guy Steele
Guy Steele's keynote at the 1998 ACM OOPSLA conference on "Growing a Language" discusses the importance of and issues associated with designing a programming language that can be grown by its users.
ACM OOPSLA conference
Speaker: Guy L. Steele Jr.
ACM OOPSLA conference
Speaker: Guy L. Steele Jr.
Forwarded from Находки в опенсорсе
Crocks: A collection of well known Algebraic Data Types for your utter enjoyment.
https://crocks.dev/
Personal opinion: the sad thing is that types are not included.
#js
https://crocks.dev/
Personal opinion: the sad thing is that types are not included.
#js
crocks.dev
Home - Crocks
A collection of well known Algebraic Data Types for your utter enjoyment.
Forwarded from CatOps
Список бесплатных сервисов и тулов для разработчиков, включая описание бесплатных планов облачных провайдеров
#халява
#халява
Forwarded from Sysadmin Tools 🇺🇦
Short guide to MongoDB monitoring
https://smalldatum.blogspot.com/2020/02/short-guide-to-mongodb-monitoring.html
https://smalldatum.blogspot.com/2020/02/short-guide-to-mongodb-monitoring.html
Blogspot
Short guide to MongoDB monitoring
This is short and incomplete. But it is a good start. This is written from the perspective of someone who spends all of their time trying to...
Forwarded from HABR FEED + OPENNET
Видео лекций Computer Science клуба
https://habr.com/ru/post/490416/
Tags: Блог компании Образовательные проекты JetBrains, Алгоритмы, Haskell, Компиляторы, образование, образовательные ресурсы, образование онлайн, компьютерные науки, computer science, computer science club
Author avsmal #habr
https://habr.com/ru/post/490416/
Tags: Блог компании Образовательные проекты JetBrains, Алгоритмы, Haskell, Компиляторы, образование, образовательные ресурсы, образование онлайн, компьютерные науки, computer science, computer science club
Author avsmal #habr
Хабр
Видео лекций Computer Science клуба
Computer Science клуб — это открытые лекции по компьютерным наукам в Санкт-Петербургском отделении Математического института РАН. Филиалы CS клуба действуют в Но...
Для тех кому интересно как звучит короновирус: сильвупле. Тут чувак оцифровал ДНК этой штуки и написал кодек из получившегося кода в какой-то музыкальный формат. Звучит...футуристичненько
Twitter
ⓢⓗⓐⓡⓓⓒⓞⓡⓔ ⧖
ever wondered what a virus sounds like? i converted the DNA sequence of #COVID2019 into music here's the first 60 seconds for your listening pleasure (the full thing is over 2 hours long) https://t.co/BTLhTWeewH
Optimizing_Your_Apache_Kafka_Deployment_White_Paper.pdf
1.4 MB
Forwarded from Архитектура ИТ-решений
SystemsInnovation.io (есть такая сетевая организация) объявила о доступности своей главной книжки Systems Thinking Guide (под лицензией creative commons) Скачать или полистать можно здесь: https://systemsinnovation.io/systems-thinking-guide/ если кому интересно
Forwarded from dd if=/dev/stuff of=/dev/tg
Статья о функциональной архитектуре от Скотта Влашина:
https://increment.com/software-architecture/primer-on-functional-architecture
TL;DR: принципы функционального программирования — использование функций как основных строительных блоков, композиция, чистота — могут быть применены не только для решения тактических задач в прикладном коде, но и для построения более общей, стратегической картины решения целиком. Скотт Влашин в деталях описывает свой подход — построение крупномасштабных «функций»-воркфлоу, применение слоистой архитектуры (onion architecture), определение ограничений (boundaries) и использование событий как входных и выходных точек решения. В конце затрагивается тема функционального фронтэнда на примере Elm и рекламируется книга автора «Domain Modeling Made Functional».
https://increment.com/software-architecture/primer-on-functional-architecture
TL;DR: принципы функционального программирования — использование функций как основных строительных блоков, композиция, чистота — могут быть применены не только для решения тактических задач в прикладном коде, но и для построения более общей, стратегической картины решения целиком. Скотт Влашин в деталях описывает свой подход — построение крупномасштабных «функций»-воркфлоу, применение слоистой архитектуры (onion architecture), определение ограничений (boundaries) и использование событий как входных и выходных точек решения. В конце затрагивается тема функционального фронтэнда на примере Elm и рекламируется книга автора «Domain Modeling Made Functional».
Increment
A primer on functional architecture – Increment: Software Architecture
Approachable ideas and best practices to help engineering teams apply the principles of functional programming to high-level design and architecture.
dd if=/dev/stuff of=/dev/tg
Статья о функциональной архитектуре от Скотта Влашина: https://increment.com/software-architecture/primer-on-functional-architecture TL;DR: принципы функционального программирования — использование функций как основных строительных блоков, композиция, чистота…
В продолжение кину еще бородатую статью про функциональную архитектуру на Free-контейнерах и ее продолжение.
Очень красиво строятся NLayer архитектуры и подмешиваются сторонние эффекты(типа логирования), которые в ООП пришлось бы делать АОПом или еще что-то придумывать. Кароч рекомендую
Очень красиво строятся NLayer архитектуры и подмешиваются сторонние эффекты(типа логирования), которые в ООП пришлось бы делать АОПом или еще что-то придумывать. Кароч рекомендую
John A De Goes
A Modern Architecture for FP
Death to IO monads: FP has better tools that point the way towards the future.
Очередной туториал от Фланта. На этот раз про Эластик
Хабр
Как мы Elasticsearch в порядок приводили: разделение данных, очистка, бэкапы
Эта статья — практическая история о том, как мы столкнулись с проблемой разделения логов, хранимых в Elasticsearch, из-за которой пришлось поменять подход к бэкапам и управлению...
Forwarded from kamyshev.code
Разбиение монолита на части
При разделение монолита на части возникает проблема, что транзакции уровня базы данных становятся невозможны. Решение — распределенные транзакции. Этот механизм позволяет получить достаточно надежные транзакции для разделённых сервисов. А во многих случаях, стоит вовсе отказаться от транзакций и разработать самовостанавливающуюся систему (например, попытки записи могут повторяться несколько раз, пока не получится).
В микросервисной архитектуре не так просто реализовать отчеты. Мы не можем просто сделать большой запрос к единой базе данных и получить результат. Есть четыре варианта:
+ каждый сервис может слать свои данные для отчетов в сервис отчетов;
+ сервис отчетов может ходить к остальным сервисам за данными;
+ если сервисы общаются через события, то сервис отчетов может просто подписаться на эти события;
+ сервис отчетов может брать бекапы разных сервисов и генерировать отчеты на основе этих данных (так делает Netflix).
#микросервисы
При разделение монолита на части возникает проблема, что транзакции уровня базы данных становятся невозможны. Решение — распределенные транзакции. Этот механизм позволяет получить достаточно надежные транзакции для разделённых сервисов. А во многих случаях, стоит вовсе отказаться от транзакций и разработать самовостанавливающуюся систему (например, попытки записи могут повторяться несколько раз, пока не получится).
В микросервисной архитектуре не так просто реализовать отчеты. Мы не можем просто сделать большой запрос к единой базе данных и получить результат. Есть четыре варианта:
+ каждый сервис может слать свои данные для отчетов в сервис отчетов;
+ сервис отчетов может ходить к остальным сервисам за данными;
+ если сервисы общаются через события, то сервис отчетов может просто подписаться на эти события;
+ сервис отчетов может брать бекапы разных сервисов и генерировать отчеты на основе этих данных (так делает Netflix).
#микросервисы
Уже очень давно люблю просить кандидатов на собесе сравнить ленивую и энергичную модель вычислений(у нас используются обе). И, если с энергичной-то все ясно, то с ленивой не все так очевидно. Вот тут вот, наверно, одна из лучших статей на эту тему: https://apfelmus.nfshost.com/articles/lazy-eval-modular-code.html
Nfshost
apfelmus - Writing More Modular Code with Lazy Evaluation
Lazy evaluation is the most widely used method for executing Haskell program code on a computer. In this tutorial, we explain how it leads to more modular code. In particular, it allows us to program with infinite lists.