Хекслет
# Почему ООП — это плохо Создатель языка Erlang Джо Армстронг написал эту статью 20 лет назад. Но в ней поднимаются важные и острые вопросы, поэтому мы перевели этот материал для вас. Армстронгу не нравилось ООП по разным причинам. В статье он поделился…
Не в полной мере согласен, но статья интересная, рекомендую. Тем более, что перевели на русский
прокричите от боли, если у вас тоже такое в каждом сервисе👇
UPD вскрикнул благодаря https://t.me/ebanatics
UPD вскрикнул благодаря https://t.me/ebanatics
Telegram
Ебанатика - наука точная
Яркие цитаты серьёзных экспертов. Хроники борьбы с ФП из первых уст. Достоверность цитат легко проверяется. Тексты и орфография сохраняются.
См. также:
@A64m_qb0_quotes
@rustlang_quotes
@gophers_think
См. также:
@A64m_qb0_quotes
@rustlang_quotes
@gophers_think
Forwarded from (
да нахуй оно не надо, можно просто взять рантаймовый диай и проверять корректность графа тестами
Forwarded from Архитектура ИТ-решений
В свое время пропустил перевод https://habr.com/ru/post/441538/ вот этого замечательного текста https://panoply.io/data-warehouse-guide/data-warehouse-architecture-traditional-vs-cloud/
Билл Инмон против Ральфа Кимбалла (Естественно, я за второго, а вы?) "Звездочка" или "Снежинка, ETL vs. ELT, облачное хранилище от Amazon и BigQuery от Google. ... что там ещё?
Впрочем и этих vs. вполне хватит :-)
Билл Инмон против Ральфа Кимбалла (Естественно, я за второго, а вы?) "Звездочка" или "Снежинка, ETL vs. ELT, облачное хранилище от Amazon и BigQuery от Google. ... что там ещё?
Впрочем и этих vs. вполне хватит :-)
Хабр
Архитектура хранилищ данных: традиционная и облачная
Привет, Хабр! На тему архитектуры хранилищ данных написано немало, но так лаконично и емко как в статье, на которую я случайно натолкнулся, еще не встречал. Предлагаю и вам познакомиться с данной...
Forwarded from Consensus
Наткнулся на очень крутую работу про LSM деревья 🔥
Авторы вначале вкратце разбирают как работает LSM-tree.
Затем рассказывают про существующие методы оптимизации LSM деревьев, например:
🔸 Как уменьшить Write Amplification Factor (который, кстати, уменьшает время жизни SSD)
🔸 Какие есть методы ускорения merge операций
🔸 Какие оптимизации позволяют LSM дереву использовать возможности SSD/NVMe и скэйлится по CPU
🔸 Техники auto-tuning'а и построение secondary index и т.д.
В конце авторы разбирают имплементации RocksDB, HBase, Cassandra, AsterixDB.
В общем это must read для тех, кто использует LSM-tree или собирается использовать.
Такой настольный white paper для пользователя LSM-tree 😉
Ссылка на white paper:
https://arxiv.org/pdf/1812.07527
Авторы вначале вкратце разбирают как работает LSM-tree.
Затем рассказывают про существующие методы оптимизации LSM деревьев, например:
🔸 Как уменьшить Write Amplification Factor (который, кстати, уменьшает время жизни SSD)
🔸 Какие есть методы ускорения merge операций
🔸 Какие оптимизации позволяют LSM дереву использовать возможности SSD/NVMe и скэйлится по CPU
🔸 Техники auto-tuning'а и построение secondary index и т.д.
В конце авторы разбирают имплементации RocksDB, HBase, Cassandra, AsterixDB.
В общем это must read для тех, кто использует LSM-tree или собирается использовать.
Такой настольный white paper для пользователя LSM-tree 😉
Ссылка на white paper:
https://arxiv.org/pdf/1812.07527
#frontend
Очень годный лонгрид про микрофронтенды. Расписано все от мотивации до технических аспектов. Лично для меня интересное началось с середины(способов композирования), но пробежаться по мотивационной части тоже будет полезно
Очень годный лонгрид про микрофронтенды. Расписано все от мотивации до технических аспектов. Лично для меня интересное началось с середины(способов композирования), но пробежаться по мотивационной части тоже будет полезно
Increment
Micro-frontends in context – Increment: Frontend
When—and why—should developers consider this newer, smaller frontend architecture pattern?
#frontend
И еще немножечко фронтенда:
1. Шикарный труд про кишки webpack. И нет, там не просто экскурсия по исходникам, а инструкция как сделать свой простенький сборщик
2. Все же знают, что современный фронтенд использует транспиляцию(возможность заюзать современный JS последнего стандарта в доисторическом браузере)? Но мало кто знает как это работает. А вот тут вот подоспел чудо-доклад про устройство транспиляторов(babel'а в частности)
И еще немножечко фронтенда:
1. Шикарный труд про кишки webpack. И нет, там не просто экскурсия по исходникам, а инструкция как сделать свой простенький сборщик
2. Все же знают, что современный фронтенд использует транспиляцию(возможность заюзать современный JS последнего стандарта в доисторическом браузере)? Но мало кто знает как это работает. А вот тут вот подоспел чудо-доклад про устройство транспиляторов(babel'а в частности)
Forwarded from Scala bin
Кратко и иллюстративно об иерархии сложности задач в современной компьютерной теории, с примерами.
Quanta Magazine
A Short Guide to Hard Problems
What’s easy for a computer to do, and what’s almost impossible? Those questions form the core of computational complexity. We present a map of the landscape.
#java
Тут вот наткнулся на сборник заметок по Java. С удовольствием полистал. Будет полезно, если знакомитесь с языком или готовитесь к собесу.
Ну и автор просил поблагодарить звездочкой и фидбеком
Тут вот наткнулся на сборник заметок по Java. С удовольствием полистал. Будет полезно, если знакомитесь с языком или готовитесь к собесу.
Ну и автор просил поблагодарить звездочкой и фидбеком
Оказывается у Hydra Conference есть свой очень крутой подкаст. Крайне рекомендую! Там пока всего 4 выпуска, но все прям огонь
#management
Наконец-то прочитал статью про ревью в netify, и прям проникся идеей.
Собственно проблема:
Наверное часто у всех на ревью возникало ощущение, что ревьюер придирается и на "такое" уж точно можно было закрыть глаза.
Решение:
Каждый коммент в ревью тегается меткой, означающей значимость. Netify выбрали для этого... камни. Например
Наконец-то прочитал статью про ревью в netify, и прям проникся идеей.
Собственно проблема:
Наверное часто у всех на ревью возникало ощущение, что ревьюер придирается и на "такое" уж точно можно было закрыть глаза.
Решение:
Каждый коммент в ревью тегается меткой, означающей значимость. Netify выбрали для этого... камни. Например
[boulder] something is wrong with xxxNetlify
Feedback Ladders: The Code Review System We Follow at Netlify
Learn more about Netlify UX team's code review process called the Feedback Ladder. We developed a system of shared terminology - naming conventions that describe each step. Check it out!
#jvm
Очень интересная статья про обработку ошибок в Kotlin'е. Наиболее важным, имхо, тут являются даже не дизайнерские решения jetbrains(хотя это тоже интересно), сколько мотивация ухода от java checked exceptions.
Очень интересная статья про обработку ошибок в Kotlin'е. Наиболее важным, имхо, тут являются даже не дизайнерские решения jetbrains(хотя это тоже интересно), сколько мотивация ухода от java checked exceptions.
Medium
Kotlin and Exceptions
What are Kotlin Exceptions and how should you use them?
Forwarded from oleg_log (Oleg Kovalov)
К P A C U B 0
https://www.youtube.com/watch?v=DuB8VUICGqc // will occasionally show ads
https://www.youtube.com./watch?v=DuB8VUICGqc // will not show ads
тред https://www.reddit.com/r/webdev/comments/gzr3cq/fyi_you_can_bypass_youtube_ads_by_adding_a_dot/
https://www.youtube.com/watch?v=DuB8VUICGqc // will occasionally show ads
https://www.youtube.com./watch?v=DuB8VUICGqc // will not show ads
тред https://www.reddit.com/r/webdev/comments/gzr3cq/fyi_you_can_bypass_youtube_ads_by_adding_a_dot/
Forwarded from Українська девопсарня
В чатике проскочила очень интересная ссылка на карту ядра linux. Однозначно в закладки! https://makelinux.github.io/kernel/map/
#books
Тут jsunderhood твитер собрал классную книжную подборку
1. Про типы
2. Про многопоточность
3. Про менеджмент
4. Про компиляторы
5. Про структуры данных
6. Про маркетинг
Тут jsunderhood твитер собрал классную книжную подборку
1. Про типы
2. Про многопоточность
3. Про менеджмент
4. Про компиляторы
5. Про структуры данных
6. Про маркетинг
Homotopy Type Theory
The HoTT Book
Homotopy Type Theory: Univalent Foundations of Mathematics The Univalent Foundations Program Institute for Advanced Study Buy a hardcover copy for $21.00. [620 pages, 6″ × 9″ size, hard…
Forwarded from FEDOR BORSHEV
Фабрика фич и просранное время
Когда в компании появляется быстрая разработка (а такое бывает, да), возникает большой соблазн превратить команду разработки в фабрику фич. Фабрика фич — это маленький заводик по клепанию фич без оглядки на реальность, когда никто не прогнозирует и не замеряет воздействие на бизнес. Такой подход быстро превращает продукт в болото из ненужного кода, в котором никто, включая разработчиков и QA, не знает, как должна работать та или иная фича.
Чтобы вылечить такие ситуации, я внедряю цикл Шухарта, когда вместо больших фич мы делаем маленькие гипотезы, замеряем их воздействие на бизнес, а потом уже делаем большие задачи, точно так же замеряя их денежный выхлоп. Типичная проблема с внедрением — когда бизнесовым ребятам пофиг на все эти продуктовые циклы: у них прямо сейчас фича горит, надо просто сделать и, вообще, нет времени объяснять.
Специально для таких ребят я придумал статус задачи «просранное время». Туда мы переводим все задачи, которые сделали в обход полноценного цикла проверки гипотез и которые при этом не оказали никакого воздействия на деньги. Такая «доска позора» где-нибудь в Трелло здорово мотивирует думать головой вместо того, чтобы давить на продуктовую команду.
Очень важно — в «просранное время» ни в коем случае нельзя переводить гипотезы, которые прошли по продуктовому циклу, но не выстрелили — если вы сели, придумали, как быстро проверить гипотезу, проверили и она не выстрелила, вы молодцы, и никакого времени мы не просрали.
Когда в компании появляется быстрая разработка (а такое бывает, да), возникает большой соблазн превратить команду разработки в фабрику фич. Фабрика фич — это маленький заводик по клепанию фич без оглядки на реальность, когда никто не прогнозирует и не замеряет воздействие на бизнес. Такой подход быстро превращает продукт в болото из ненужного кода, в котором никто, включая разработчиков и QA, не знает, как должна работать та или иная фича.
Чтобы вылечить такие ситуации, я внедряю цикл Шухарта, когда вместо больших фич мы делаем маленькие гипотезы, замеряем их воздействие на бизнес, а потом уже делаем большие задачи, точно так же замеряя их денежный выхлоп. Типичная проблема с внедрением — когда бизнесовым ребятам пофиг на все эти продуктовые циклы: у них прямо сейчас фича горит, надо просто сделать и, вообще, нет времени объяснять.
Специально для таких ребят я придумал статус задачи «просранное время». Туда мы переводим все задачи, которые сделали в обход полноценного цикла проверки гипотез и которые при этом не оказали никакого воздействия на деньги. Такая «доска позора» где-нибудь в Трелло здорово мотивирует думать головой вместо того, чтобы давить на продуктовую команду.
Очень важно — в «просранное время» ни в коем случае нельзя переводить гипотезы, которые прошли по продуктовому циклу, но не выстрелили — если вы сели, придумали, как быстро проверить гипотезу, проверили и она не выстрелила, вы молодцы, и никакого времени мы не просрали.
Forwarded from DataEng
Интересный обзор новых БД от автора книги Seven databases in seven weeks. Автор планирует написать 3 поста с небольшими обзорами главных фич.
Первая часть посвящена: TileDB, Materialize и Prisma. Во второй части будут разобраны EdgeDB, Tremor и Debezium (CDC). И в финальной части автор обещает сделать выводы.
Ссылка на статью: https://lucperkins.dev/blog/new-db-tech-1/
Первая часть посвящена: TileDB, Materialize и Prisma. Во второй части будут разобраны EdgeDB, Tremor и Debezium (CDC). И в финальной части автор обещает сделать выводы.
Ссылка на статью: https://lucperkins.dev/blog/new-db-tech-1/
#arch #microservices
Большой лонгрид про Cloud-Native и эти ваши микросервисы.
Очень годный там парад антипаттернов(особенно орнул с DeathStar)
Большой лонгрид про Cloud-Native и эти ваши микросервисы.
Очень годный там парад антипаттернов(особенно орнул с DeathStar)
InfoQ
Adoption of Cloud-Native Architecture, Part 1: Architecture Evolution and Maturity
In this article, authors Srini Penchikala and Marcio Esteves discuss what organizations should assess when adopting cloud native architectures for hosting their applications on cloud. It focuses on architecture hosting models. They also discuss how architecture…
Тут завтра и в пятницу намечаются интересные стримы про java и около нее с Шипилевым и другими именитыми товарищами. А ну ка быстро все го слушать про кишочки)))
Хабр
Онлайн-стримы с Алексеем Шипилёвым и с Артемом Ерошенко
Конференции продолжаются, и на этой неделе мы приглашаем вас окунуться в мир Java и тестирования вместе с нашими шоу. Расписание на эту неделю: Среда: Java — Первая чашка кофе с JPoint...
Forwarded from oleg_log (Oleg Kovalov)
Интересно, оказывается был такой пост 10+ дней назад, про отказ от TS во внутренних частях Deno.
- compile time when changing files takes several minutes
- isn’t proving itself helpful to organize Deno code
- и еще 3, которые сюда пихать не хочу :)
https://startfunction.com/deno-will-stop-using-typescript/
- compile time when changing files takes several minutes
- isn’t proving itself helpful to organize Deno code
- и еще 3, которые сюда пихать не хочу :)
https://startfunction.com/deno-will-stop-using-typescript/