I hate overtime
869 subscribers
129 photos
4 videos
54 files
961 links
Some DevOps, SRE and IT development stuff
Download Telegram
📌 chaoskube - утилита для проверки вашего kubernetes на прочность. Периодически приходит и убивает случайный под в кластере.

https://github.com/linki/chaoskube

#kubernetes #github
Лекции по прикладной теории категорий в MIT от Дэвида Спивака и Брендана Фонга:
https://www.youtube.com/playlist?list=PLhgq-BqyZ7i5lOqOqqRiS0U5SwTmPpHQ5
Материал лекций основан на замечательной книге Seven Sketches in Compositionality.
Software-Architecture-Patterns.pdf
5.1 MB
#books
Тут подъехала брошура от Mark Richards'а про патерны современных приложенек. Все очень обзорно и больше похоже на какой-то маркетинговый буллшит материал, но тем не менее ознакомиться стоит
I hate overtime
Software-Architecture-Patterns.pdf
#microservices #soa
Вспомнил, что, кажется, не постил статью Марка про отличие микросервисов от SOA. Много текста, но
1. у Марка очень интересная таксономия микросервисов, отличающаяся от Ньюмановской и Фаулеровской
2. наверно одна из наиболее показательных статей по сабжу. Для тех кто все еще не устаканил в голове чем же микросервисы отличаются от сервисов — рекомендую
#frontend #react
Тут ребятки из инстаграма замутили эпос в 4х частях про перфоманс фронтенда. Не сказал бы, что прям сплошные инсайты(вроде все это уже обсосали), но очень хорошо систематизировано и с примерами.
1. Префетчинг
2. Серверные пуши
3. Кеширование стейта
4. Уменьшение размера бандла
#dotnet #scala
Как-то я прощелкал выход C# 8, а это, между прочим, событие!
- Во-первых, в наш обижатник наконец-то завезли паттерн-матчинг. Не, не вот это вот убожество на if ... else, а настоящий:
static Quadrant GetQuadrant(Point point) => point switch
{
(0, 0) => Quadrant.Origin,
var (x, y) when x > 0 && y > 0 => Quadrant.One,
var (x, y) when x < 0 && y > 0 => Quadrant.Two,
var (x, y) when x < 0 && y < 0 => Quadrant.Three,
var (x, y) when x > 0 && y < 0 => Quadrant.Four,
var (_, _) => Quadrant.OnBorder,
_ => Quadrant.Unknown
};


По мимо этого, внезапно завезли дефолтную имплементацию интерфейсов
interface IDefaultInterfaceMethod
{
public void DefaultMethod()
{
Console.WriteLine("I am a default method");
}
}


И вот как-то так получается, что додиез медленно, но верно превращается... в скалу)) Вот только если в ЯП сына маминой подруги совсем другая модель выполнения и система типов, то в C#, естественно, ничего менять не стали, из-за чего все FP-фичи языка получаются немного куцыми и оставляющими неприятное послевкусие(почему хаскелю можно, а мне нет😢).
Но, конечно, спасибо и на этом. Все равно приятно
Пятничный мем. В этот раз во-время, но длинный)
#sql
Продолжаем наш фестиваль "для тех, кому не повезло"😉
Вот огромная репа с кучей полезного для выживания с Sql Server. Есть полезняшки для всех версий скуля, включая Azure Sql
Forwarded from Scala bin
Буквально несколько часов назад была опубликована книга Дженса Грасселя Pure functional HTTP APIs in Scala. Издание расчитано на опытных Scala программистов, использующих "enterprise" библиотеки (Akka, Play, Spring), но стремящихся к более ФП-ориентированному подходу к разработке.

Книга по сути представляет из себя пример итеративной реализации web-сервиса с учётом всех значимых компонент: загрузка конфигурации, роутинг, тестирование и т.д. Дополнительным бонусом служит то, что получить книгу можно абсолютно бесплатно.
Forwarded from oleg_log (Oleg Kovalov)
#db
В очередной раз наткнулся на супер-тулзу Wal-g(дада, слоупок). Но, в этот раз, в достаточно необычном аспекте! Все знают, что эта штука отлично бекапит постгрес. А знали-ли вы, что с помощью этой(и, судя по всему, только этой) штуки в можете снимать инкрементальные(Карл!) бекапы с mongoDb?! Не благодарите)
С вами рубрика #кишочки ! В этот раз у нас Apache Flink.
Вообще Флинк -- это стримовый процессор, который(в двух словах) умеет что-то считать на стриме и класть результат в другой стрим, примерно как kafka streams или spark streaming. Но щас нам это не важно, а важно нам то, что флинк умеет в стейтфул процессинг, и, соответственно, как-то хранит стейт в процессе обработки стрима.
Если честно, то я только чутка крутил стрим-процессинг, и для меня стейтфул(условно, есть у вас поток ивентов о температурах пациентов в больнице за день, а вам надо среднее посчитать) показался весьма суровым челенджем, т.к. не очень понятно где этот самый стейт держать. И вот гугол мне рассказал, что есть куча удачных и не очень практик как сохранить стейт в процессе обработки, а тут, флинк умеет в это прямо из коробки! Ну естественно лезем в флинк за бест-практисами и в ответ на вопрос "как?" получаем...а "жопой". Похоже что ничего лучше чем запихнуть скульлайт в каждый таск так никто и не придумал((( Чудес не бывает(
Forwarded from DevOps Deflope News
В ближайшие три дня в San Diego, California будет проходить KubeCon + CloudNativeCon North America 🎉

Если вы не там 😎, то можно посмотреть бесплатную трансляцию keynote выступлений https://amp.gs/sE0r
Программа https://amp.gs/sE0S
#kubecon #live
#bigdata
В продолжение темы стримингового процессинга, забавная статья про batch vs stream processing. Может быть очень полезна для "продажи" стримингового решения ETL-староверам. С примерами на капкейках!
Forwarded from Sysadmin Tools 🇺🇦
Linux Systems Performance in 40 minutes by Brendan Gregg, Netflix

https://www.usenix.org/conference/lisa19/presentation/gregg-linux
Forwarded from Datalytics
Доклад Марка Сысоева (Skyeng) на конференции MateMarketing был посвящен анализу поведения пользователей с помощью цепей Маркова.

Сегодня хочу поделиться с вами решением на Python, разработанное Марком, которое позволяет преобразовать лог событий в цепи Маркова для дальнейшей визуализации и анализа.

https://github.com/BartolomeuD/markov-chain