11 февраля 2016

Напочитать: Техноништячки


Много по Java, но есть и общеприменительное 

1. Что делать с Kafka если увидел ее в первый раз в жизни.
2. Принципы Chaos Engineerging от Netflix
3. Testing should only be manual to invalidate assumptions, validating assumptions should be automatic и другие интересные сентенции про DevOps.
4. Из чего сделаны распределенные системы - много, длинно, но все по делу, да.
5. Axon Framework чтобы делать у себя CQRS на коленке.
6. Увэ Фридрихсен о том как мы себя обманываем DRY-принципом и Сэнди Метц про то как мы обманываем себя абстракциями в коде.
7. Как хранить деревья в SQL базах. Не, нуачо, вдруг пригодится.
8. Адовый инструмент по анализу дизассемблированного кода от Google - binnavi.
9. Пользуемся ChronicleMap правильно. Это такая off-heap мапа от high-frequency трейдеров.
10. 21 век, докеры, облака, а раскатываение приложений с помощью deb-пакетов не потеряло своей актуальности. Для java тоже.
11. Красивый, асинхронный retry от Томаша Нуркевича. Нафига оно написано здесь.
11. Ну и на закуску

Одним из важнейших принципов программирования для меня является необходимость создания собственного инструментария для любого проекта, начиная с проектов средней величины. Это мы красиво называли созданием специализированного (для проекта) языка программирования, включавшего специфичные структуры и классы данных и базовые процедуры. Крупные проекты требуют параллельной разработки специфических (для проекта) отладочных средств. Все это не исключает, а даже предполагает создание абстрактных библиотек, а также инструментальных и отладочных средств, используемых во всех проектах. В сущности, только последнее и делает ремесло программиста или бизнес фирмы по разработке программ, прибыльным делом.