Экспресс-курс «Управление качеством архитектуры и исходного кода»

Успешно проведенный почти год назад пятидневный тренинг по управлению качеством исходного программного кода заставил задуматься о создании его «краткой версии». При этом цель курса — введение в проблематику статического качества программных систем — остается без изменений.

Читать далее

Проклятие goto: антишаблоны процедурного программирования

Структурная, или процедурная, парадигма может праздновать полувековой юбилей. Процедурное программирование, иногда — как часть мультипарадигмальных проектов — по-прежнему торжествует при разработке системного и встроенного ПО. И если благодаря Эдсгеру Дейкстре (Edsger W. Dijkstra) всякому школьнику ведомо, когда и почему нельзя использовать оператор безусловного перехода к метке (goto), то с остальными «нельзя», а значит, и с качеством кода, проблемы возникают даже у студентов с хорошей базовой подготовкой.

Читать далее

Секреты аблаута, или несколько слов о неэффективности обучения английскому языку

Парадоксально, но факт: ряды аблаута (нем. Ablautreihen) сильных глаголов обычно входят в программу изучения немецкого, но о них даже не упоминают при обучении английскому языку! Хотя само явление регулярного чередования гласных в корневой морфеме глагола характерно не только для германских, но и славянских, и индоевропейских языков вообще.

Читать далее

«Непрофессиональный блог»: главное за семь месяцев

Итак, хмурой московской осенью блог «повзрослел»: нас комментируют, цитируют. На блог охотно подписываются не только деловые партнеры, но и студенты автора, которые находят этот блог без малейшей подсказки. Сильнейшую маркетинговую поддержку блогу бескорыстно оказывает машина Google Search, выведшая его на первую страницу результатов поиска по релевантным запросам еще весной-летом. Пришло время оглянуться назад и… составить «пятерку» наиболее популярных записей в марте – октябре 2013 г.

Читать далее

Приказано изготовить: жизненный цикл без стадии сбора требований

Проведенный со студентами обзор моделей жизненных циклов (ЖЦ) сложных инженерных систем затронул вопрос о том, может ли быть опущена стадия разработки замысла системы, известная каждому как «Концепция» (см. технический отчет ISO/IEC TR 19760). Казалось бы, без сбора требований не обойтись, но и в подтверждение этого правила есть свое исключение.

Читать далее

Грамотность — это уважение к собеседнику

Есть вещи, мимо которых немыслимо пройти равнодушно. У каждого такие вещи — свои. Автору блога, например, трудно сдержать вздох при взгляде на безграмотный текст, даже если за ним стоит человек с солидной деловой репутацией, любимое место отдыха или…

Читать далее

Нужна ли социология программистам?

Недавний деловой разговор за вечерним кофе вывел на далекий от основной темы, но крайне интересный вопрос: насколько значима — да и необходима ли вообще — социологическая (и гуманитарная в целом) подготовка инженерам ПО? Приведенные автором этих строк аргументы показались собеседнику убедительными. Настолько, что автор строк берет на себя смелость повторить их публично.

Читать далее

Обновленная программа курса по инженерии требований

Время «наивной» инженерии требований безвозвратно прошло. Сегодня системные аналитики все ближе к пониманию того, что требования заинтересованных сторон выступают функциональным описанием будущей программной системы, имеют свой жизненный цикл и являются артефактом первостепенной важности. Умело работать с требованиями можно, только используя широкий спектр прикладных техник, научить применению которых — цель нового курса.

Читать далее