24 октября 2017

"А мы можем вот это немного поменять?" или страшный сон архитектора. Отзыв на книгу "Building Evolutionary Architectures"

Всем привет.

Читая рассылку блога Мартина Фаулера, наткнулся на его предисловие к недавно вышедшей книге коллег из ThoughtWorks - "Building Evolutionary Architectures".

Книга посвящена проблеме, с которой сталкиваются многие разработчики: развитие архитектур программных продуктов, или как задизайнить систему так, чтобы всё было ок при условии постоянно меняющихся требований к системе. Где же лежит тот crystal ball, который покажет нам будущее и что делать, если у вас его таки нет :)

10 сентября 2017

"...Блоки разные верстать и с шрифтами как играть учат в школе, учат в школе, учат в школе." Отзыв на книгу "CSS: The Missing Manual, 4th edition"

Отрицание, или "Ты помнишь, как всё начиналось"


Современная профессиональная разработка ПО настолько комплексное занятие, что часто приходится выходить из зоны комфорта чтобы посмотреть в каких ещё направлениях работают другие люди чтобы улучшить продукт.
Программы, в которых основная работа выполняется без участия человека, зачастую всё равно не обходятся без создания web UI (например интерфейс для управления и настройки).
Раньше в Java мире проблему создания таких web UI силами backend разработчиков решали фреймворками (например Vaadin, GWT), которые позволяли не зная CSS и JS описывать UI на Java. И оно даже стабильно работало, если приложение - просто прослойка для работы с БД.
Ожидаемо интерфейсы выглядели как под копирку, были слабо кастомизируемы, тратили ресурсы серверов на динамическую генерацию html, и выглядели по-энтерпрайзному уныло (разработчикам было пофиг, да и задачи "сделать хорошо" не ставилось). Иногда вишенкой на торте было то, что попытка интегрировать код UI-фреймворков с кучей магии, в которую никто не вникал, в многопоточное и динамическое окружение сложного backend-а приводила к появлению race conditions, которые обязательно что-то ломали на продакшене, и к утечкам памяти. Нет, авторы этих фреймворков не идиоты. Но мощь и гибкость этих вещей иногда играла злую шутку с теми, кто думал: "Ну оно ведь и так должно работать. Это же почти как в том примере из документации!"

28 мая 2017

Классика Project Management-a: "Мифический человеко-месяц" и "Психбольница в руках пациентов"

Всем привет!

Приход весны привёл к существенному продлению светового дня, что привело к тому, что перед походом на работу стало появляться время почитать десяток страниц чего-нибудь интересного, до чего раньше руки не доходили. В результате я осилил две достаточно интересных книги, о которых раньше часто слышал: Алан Купер "Психбольница в руках пациентов", Фредерик Брукс "Мифический человеко-месяц". От прочтения обоих книг я получил большое удовольствие и некоторые интересные инсайды, которыми не переставал делиться с коллегами по работе и готов поделиться с вами :)