Теория разбитых окон в программировании

Теория разбитых окон в программированииВ криминалистике существует интересная теория под названием «Теория разбитых окон» (ТРО). Суть её в том, что разбитое окно, при несвоевременной замене, влечёт за собой целую серию разбитых окон. Более того, серия разбитых окон может быть индикатором повышающегося уровня преступности в заданном регионе. На ум сразу приходит известная всем фраза «Чисто не там, где убирают, а там где не сорят». Согласно этой теории, чисто именно там, где убирают, стимулируя тем самым людей не сорить в будущем. Стоит заметить, что это применимо не только к окнам 🙂 Автолюбителям наверняка знакома эта теория на дорогах, хотя они могут и не догадываться о её существовании. Я не раз замечал большое скопление автомобилей, припаркованных под знаком «Остановка запрещена». Стоит лишь одному остановиться под ним, остальные водители не заставят себя долго ждать. Удивительно как мало внимания дорожная полиция уделяет этому факту. Правонарушения должны своевременно пресекаться.

Но вернёмся всё же в мир разработки программного обеспечения. Удивительно, но и здесь ТРО находит свой отклик. Современный процесс создания ПО находится под жестким прессингом сроков. Бизнесу очень важно как можно раньше поставить продукт на рынок по ряду причин. Отсюда рождаются различные методологии управления вроде Agile, Lean, формируются концепции MVP (Minimum Viable Product). Как следствие, страдает качество кода, он начинает «протухать». С «вонючим кодом» можно жить, более того, практически всегда он есть в той или иной степени, это нормально. Но его нарастающая доля служит одним из первых индикаторов того, что пора «бить во все колокола». Почему? Основываясь на собственном опыте скажу, что программист охотнее «говнокодит» там, где этого «говнокода» предостаточно. И наоборот, человек несколько раз подумает, прежде чем отправлять свой шедевр на код ревью, если в проекте стараются соблюдать чистоту кода. Помимо прочего, «разбитое окно» в коде создаёт ощущение наплевательского отношения к проекту, тем самым порождая чувство безразличности к нему. Зачем пытаться что-то изменить, если всем наплевать?

Чините «разбитые окна» в коде как можно чаще.

Вам может быть интересно почитать также:

Progressive Web Apps: начало новой эры веб-приложений

Начало перемен в Web

В последнее время я всё чаще начинаю задумываться о судьбе современного Web. Привычный для нас веб потихоньку трансформируется во что-то грандиозное. Сейчас мы живём в эпоху стремительных перемен, за этим очень интересно наблюдать. Шумиха вокруг мобильных приложений, которая началась с появление iPhone и Android, потихоньку спадает. Количество приложений на смартфонах пользователей не растёт. У рядового юзера образовался определённый костяк приложений, которые он чаще всего использует: YouTube, Instagram, WhatsApp/Viber/Telegram, Facebook, VK, браузер (Chrome, Safari, Opera, Mozilla Firefox). В остальном нет необходимости. Если хочется почитать новости или развлекательный контент, всегда можно зайти на мобильную версию сайта, используя любимый браузер.

Мобильный вебсайт

Web 1.0

Когда я был маленьким, веб был примитивным. Читать далее «Progressive Web Apps: начало новой эры веб-приложений»

Ещё одна попытка начать писать в блог

Приветствую, уважаемый читатель!

Честно говоря, я уже давно забыл какой это по счёту блог, вернее попытка начать вести его. Так уж получилось, что более-менее успешный блог у меня был в далеком 2009 году, но из-за «кривизны» моих рук его уникальный контент бесследно канул в лету. Позже были многочисленные попытки возродить его, но каждый раз всё заканчивалось неудачей, проще говоря, мне было лень снова что-то начинать писать. Необходимость ведения блога есть, причём острая. В первую очередь она связана с родом моей деятельности. Я разработчик ПО, в простонародье программист, а ввиду нашей динамичной сферы деятельности, где технологии устаревают и появляются столь стремительно, не делать заметки грех. Мы, программисты, по своей природе ленивый народ, и именно этот факт частенько доставляет нам массу неудобств и страданий. Помимо того что мы ленимся комментировать свой код и писать к нему документацию, мы не делаем банальных заметок при изучении тех или иных вопросов, связанных с технологиями и их смежными областями. Стоит лишь отнестись к данному вопросу чуточку серьёзней, это помогло бы нам сэкономить массу времени и нервов в будущем. Поэтому данный блог я рассматриваю в первую очередь как записную книжку для моих мыслей, идей и размышлений. Если уж так получится, что кто-то из вас найдёт здесь для себя что-нибудь полезное, то я буду только этому рад.

Тематика блога узконаправленная, в основном тут будут записки на тему софтостроения и смежные области.

Контактную информацию можно посмотреть на странице Обо мне.