TGViewer
Channel Public Channel
I hate overtime

I hate overtime

@overtimehate

Some DevOps, SRE and IT development stuff
Subscribers
848
Photos
129
Videos
4
Links
961

Showing posts older than #951 · Back to latest

Older Posts 20 shown
Post #950 613
Для тех кто из-за карантина уже научил кота плясать, построил 3хэтажный карточный домик с террасой и сделал всякие другие нужные и полезные вещи вот тут вот в открытом доступе лежит книга type driven development with Idris.
Почему стоит почитать:
1. Это, наверное, первый "мейнстримовый"(неакадимический) язык с зависимыми типами
2. Idris -- реально странный! Там типы как first class citizen(можно передавать в функцию, возвращать и т.д.). Все функции тотальные и нет исключений.
3. А еще(имхо, самое важное) автор уверяет, что книжка-то не про идрис, а про программирование через типы. Т.е. про то как подружиться с компилятором на столько, что бы он помогал писать код, а не просто орал в конце "rejected!!1". Собственно ради этого люди и идут в функциональщину
Post #949 674
I hate overtime Так как же быть?
#sre #observability
Спасибо огромное, котаны, за ваше участие! Ваше мнение очень важно и интересно, но я все-таки присоединюсь к меньшинству.
Поясню свою позицию: допустим мы не инжектим условный Coda Hale Metrics в наш условный ApiClient и хотим собирать метрики по уходящим через этот клиент запросам. Скорее всего метрика будет не одна, а несколько. Возможно среди них будет гистограмма(т.е вот где-то тут уже придется навернуть все эти скользящие окна и т.д.). Потом мы все это добро прячем под отдельный интерфейс и получаем...тот же самый Coda Hale Metrics, только изобретенный заново.
Если я что-то не понимаю, то го в комменты.
З.Ы. вот вам шикарнейший гайд по обзервабилити от Digital Ocean
Digitalocean Tags | Community | DigitalOcean What are you interested in? Dive into our library of open source resources by choosing a specific tag below.
Post #948 15
Post #947 704
#devops #docker
Post #945 661
#sre
Лазил тут по интернетам в поисках ответа на вопрос "как правильно дизайнить приложение с метриками" и наткнулся на бомбическую статью по Metrics Driven Development.
Тут и практики и примеры и крутые ссылки, кароч очень рекомендую!
З.Ы. собственно сам вопрос: есть 2 стула, на одном injection точеного metricsExposer'а во все места где что-то нужно заэкспоузить, на другом — прикрутить какое-то апи к модулям, которые должны торчать метриками и собирать через это апи значения метрик в каком-то специальном инфраструктурном слое...запилю-ка опрос
Kevin Sookocheff Metrics-Driven Development Metrics-Driven Development is an emerging term developing from the practices of continuous integration, continuous delivery, dev ops, and agile software methodologies. This article serves to define what metrics-driven development is, why it is useful, and…
Post #943 795
Наверняка многих из-за короновируса перевели на удаленку. В связи с этим, ловите несколько советов от трелло как правильно комуницировать онлайн.

З.ы. обычно я пролистываю такой контент неглядя, но тут получилось интересно: я вот всегда к удаленке относился скорее негативно, но и ЧСХ мнение по поводу коммуникаций у меня всегда было полностью полярным(никогда не приветствовал болтовню на митах и всегда был за максимально лаконичные диалоги). Т.о., артикл заставил меня задуматься, что возможно я просто душный)) Поэтому я и решил поделиться: может и вас это заставит что-то переосмыслить)))
Work Life by Atlassian 4 ways to make strong connections as a remote worker Successfully working remotely is more than just working at home. Here are 4 quick tips to help make the remote work process more effective.
Post #942 676
#dotnet #async
Очень классный гайд по дотнетовым таскам(а-ля джавовые/скаловые future).
Тут и немного истории и мат.часть и подводные камни.
Я бы еще добавил сюда FRP для полноты картины(вот, например, годное интро), но даже без этого всем дотнетчикам и сочувствующим must read

P.S. упоминаемый там "документ"
Хабр Async programming in .NET: Best practices Появление async/await в C# привело к пересмотру того, как писать простой и корректный параллельный код. Зачастую, используя асинхронное программирование, програм...
Post #941 656
Post #938 12

Forwarded from Инжиниринг Данных

Если вы работаете с Big Data, то вы часто работаете с продуктами Apache (Hadoop, Hive, Kafka). Так же вы слышали про Data Lake, особенно в контексте облака, где много инструментов, чтобы быстро его создать. Когда мы храним данные в озере данных, или вообще работает с большими данными, важно использовать правильный формат данных. Вот хорошая статья про Apache Parquet. Отличная компрессия (10x) и возможность партиционирования, сделала это формат лидером.
Medium Apache Parquet: How to be a hero with the open-source columnar data format Apache Parquet file format for Google BigQuery, Azure Data Lakes, Amazon Athena, and Redshift Spectrum.
Post #937 646
Когда тебя чуть-чуть бесят коллеги и надо как-то назвать пейпер
Post #936 525
Уже очень давно люблю просить кандидатов на собесе сравнить ленивую и энергичную модель вычислений(у нас используются обе). И, если с энергичной-то все ясно, то с ленивой не все так очевидно. Вот тут вот, наверно, одна из лучших статей на эту тему: 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.
Post #935 11

Forwarded from kamyshev.code

Разбиение монолита на части

При разделение монолита на части возникает проблема, что транзакции уровня базы данных становятся невозможны. Решение — распределенные транзакции. Этот механизм позволяет получить достаточно надежные транзакции для разделённых сервисов. А во многих случаях, стоит вовсе отказаться от транзакций и разработать самовостанавливающуюся систему (например, попытки записи могут повторяться несколько раз, пока не получится).

В микросервисной архитектуре не так просто реализовать отчеты. Мы не можем просто сделать большой запрос к единой базе данных и получить результат. Есть четыре варианта:
+ каждый сервис может слать свои данные для отчетов в сервис отчетов;
+ сервис отчетов может ходить к остальным сервисам за данными;
+ если сервисы общаются через события, то сервис отчетов может просто подписаться на эти события;
+ сервис отчетов может брать бекапы разных сервисов и генерировать отчеты на основе этих данных (так делает Netflix).

#микросервисы
Post #934 2.21K
Post #933 638
dd if=/dev/stuff of=/dev/tg Статья о функциональной архитектуре от Скотта Влашина: https://increment.com/software-architecture/primer-on-functional-architecture TL;DR: принципы функционального программирования — использование функций как основных строительных блоков, композиция, чистота…
В продолжение кину еще бородатую статью про функциональную архитектуру на Free-контейнерах и ее продолжение.
Очень красиво строятся 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.
Post #932 18

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».
Increment A primer on functional architecture Approachable ideas and best practices to help engineering teams apply the principles of functional programming to high-level design and architecture.
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →