Баги и дыры
• Любите свои баги, и вы многому научитесь у них.
• Не каждое сообщение о найденной уязвимости достойно реагирования.
• Горькая правда: не каждый баг достоин исправления, и это нормально.
• У каждого бага есть шанс быть исправленным. Даже в калькуляторе Windows.
• Оптимистичный взгляд на уникальность человеческой расы, а также причины сбоев в сложных системах.
• Забавные баги в системах выдачи чеков о покупках.
Архитектура систем и разработка приложений
• Если pull request изменяет большое количество файлов, то его возможные последствия могут быть непредсказуемыми.
• Бесплатная книга от Google, посвященная обеспечению надежности web-сервисов.
• Частное мнение: чем хороший разработчик отличается от плохого?
• Аналогия пробивания дыр в стене с разработкой ПО: хорошим инструментам может всегда найтись неудачное применение.
• От прототипа к конечному продукту: результат может не оправдать ожиданий.
• Пароли, выдаваемые генератором случайных чисел, стоит конвертировать в Unicode, чтобы на выходе была допустимая строка.
• Минималистичный (текстовый) Интернет: броузер Browsh пришел на смену Lynx и может больше своего предшественника.
• Работа с ветками кода: cherry-pick или merge? Зависит от цели процедуры.
Тестирование и качество ПО
• Google Testing Blog: хорошие интерфейсы поощряют их хорошее использование.
• История отладки одного тест-кейса: чем дальше в лес, тем больше дров.
• Может ли модульный тест облегчить исправление бага?
• Ebay: использование deep learning при тестировании графического интерфейса, а также React и Enzyme в интеграционных тестах.
• Google Testing Blog: нет смысла проверять все аргументы метода.
Между стулом и монитором
• Тяжела и неказиста жизнь простого программиста: то со сроками давят, то левак просят сделать на халяву в свободное время.
• Стоит ли начинать что-либо серьезное в пятницу, чтобы с негодованием отвергнуть это в понедельник?
Лето – это маленькая жизнь.
Что такое качество программного обеспечения и как его улучшить: теория и практика, задачи и решения, подводные камни и обходные пути.