Добрый день.
Баги, дыры и провалы
• История одной системы: два года разработки и миллионы на ветер.
• Опыт Twitter: два снаряда могут упасть в одну воронку.
• Работа с датой и временем: велосипед давно изобретен и работает как часы.
• История о том как параллельные SQL-запросы с циклами ожидания и удручающим временем выполнения были заменены хранимой процедурой.
• Славная история уязвимости POODLE, заставившей говорить о себе весь мир.
• SSL 3.0: что такое POODLE и к каким последствиям эта атака может привести.
• Отчет о расследовании обстоятельств кибератаки, направленной на банкоматы: как можно заставить банкомат выдать деньги без всякой карты?
• Из серии “Нарочно не придумаешь”: как может накуролесить простой комментарий в коде.
• Золотой ключ безопасности, позволяющий “хорошим парням” открыть дверь в информационную систему, несет в себе немало потенциальных угроз от “нехороших парней”.
• Разбор кусочка кода: получение нового GUID замыливает глаз и вязнет на языке.
• История о том как можно потерять свои заметки при синхронизации iPhone c iCloud.
• Можно ли доверять расширениям браузеров? Порой они становятся слишком наглыми.
• ShellShock: экспорт переменных окружения в bash, приводящий к дыре в Apache, изначально рассматривался как полезная функциональность для передачи информации от родительского процесса дочернему.
• История исправления одного бага в Firefox: извлеченные уроки.
Архитектура систем и разработка приложений
• Почему нельзя изменить содержимое стартовой страницы в Windows 8 программным путем и что может произойти если это разрешить?
• Gustavo Duarte завершает серию публикаций о ловушках стека и обещает вернуться (1, 2).
• Martin Fowler: любой код рано или поздно окажется на свалке истории, поэтому чем легче будет его выбросить, тем лучше.
• Inbox не будет убивать GMail, но при желании добавит интеллект в механизм сортировки почты.
• Как создать проект с открытым кодом на GitHub, вызвать интерес сообщества разработчиков и выдать для проекта путевку в жизнь.
• Один из вариантов организации логина без пароля: никакой магии.
• Когда создаются и уничтожаются глобальные объекты в Visual C++ ?
• Дилберт убедился, что эффект синергии не всегда наблюдается при работе в паре.
• Онлайн-игра League of Legends: особенности реализации чата, обслуживающего 70 миллионов игроков.
• Apache Storm: эволюция проекта и извлеченные уроки.
• Слайдеры в мобильных интерфейсах: чем они хороши и как их использовать.
• История внедрения CortexDB в BMW: что, как и почему?
• Что день грядущий нам готовит: прогноз на будущее PHP.
• Что каждый разработчик мобильных приложений должен знать про Android?
• Состоялся релиз SObjectizer 5.5.0: теперь для SObjectizer достаточно наличия стандартной библиотеки C++ 11.
• Так вот оно что, Михалыч: почему ASCII-символы, приведенные к Unicode, отображаются как китайские иероглифы?
Тестирование и качество ПО, автоматизация
• Michael Bolton возвращается к истокам и рассказывает о том что собой представляет тестирование ПО.
• James Bach: тестировщик прислушивается к разработчику, а разработчик к тестировщику, и никак иначе.
• Failure Injection Testing: что за диковину внедрили в Netflix и с чем его едят?
• Три простых, но полезных совета по автоматизации инфраструктуры.
• Andrew Trenk (Google) о названии тестов: как вы яхту назовете, так она и поплывет.
• Свободу от тест-плана! Десять вредных (по мнению автора) советов по тестированию ПО.
• Введение в модульное тестирование приложений, построенных на базе AngularJS.
• Модуль Test::Spec в Perl: плюсы, минусы и особенности.
• Думать и не полагаться на популярные мантры: усилия по улучшению тестируемости продукта не всегда приводят к хорошим архитектурным решениям.
Между стулом и монитором
• Политика кнута порой способствует излишне оптимистичным новостям о проекте.
• Если отвлечь иного разработчика дурацким вопросом, он забудет то, о чем размышлял последние пять лет.
• Я знаю самый лучший вариант дизайна: сейчас мы проведем эксперимент, и вы в этом убедитесь.
• Scott Hanselman дает 100 технических советов по компьютерным технологиям, обращаясь к людям нетехнических специальностей.
• Alan Page (Microsoft): не нужно переоценивать техническое интервью, но кое-что из него можно извлечь.
• Дилберт пытается выторговать более короткий рабочий день, но оказывается нещадно бит неожиданным аргументом.
Эпизоды
Все в порядке:
Т1. Как прошел тест-драйв?
Т2. Багополучно!
Кнут и пряник:
М1. Поднял разработчикам зарплату, но лучше работать они не стали.
М2. А я своим подарил “Искусство программирования” Дональда Кнута и вижу результат.
М1. Кнут лучше пряника?
Надежда и вера:
Т. Здесь баг.
Р. Увижу и поверю.
Б. Поверь и увидишь.
Всего доброго, до встречи.
Что такое качество программного обеспечения и как его улучшить: теория и практика, задачи и решения, подводные камни и обходные пути.