Добрый день.
События, публикации, решения по темам: архитектура систем; разработка, отладка и тестирование программного обеспечения; инструменты автоматизации; системное администрирование; эпизоды.
Архитектура систем
• Почему StackExchange не размещает свой сервис в облаке?
• Несколько полезных советов от создателей Google+: что предпринимается для улучшения производительности сервиса?
• 10 базовых архитектурных паттернов на пути к эффективному масштабированию.
• Почему мы ушли из облака: опыт компании Mixpanel, объяснение принятого решения и его обсуждение (1, 2, 3).
Разработка программного обеспечения
• Точка зрения: почему многие разработчики ненавидят ASP.NET и в чем они ошибаются?
• Perl приходит на помощь в деле розыска владельца потерявшегося пса.
• Firefox: еще один обзор аддонов для web-разработчиков.
• Web-анимация с помощью Paper.js: разбор полетов.
• SQL на практике: запрос мастера и подмастерья.
• IBM developerWorks: работа с Amazon SimpleDB, доступ к информации Википедии с помощью PHP и API MediaWiki, взаимодействие через Интернет с помощью CURL и libcurl.
• Краткое введение в набор инструментов Dojo, претендующего на лавры jQuery.
• Еще один способ выявить эффективного разработчика: от простого к непредусмотренному.
• Системы управления версиями: какие преимущества есть у Subversion? Интервью с Иваном Жаковым, техническим директором VisualSVN.
• Улучшение безопасности автомобиля может привести не к безопасному, а к более агрессивному стилю вождения. Есть ли подобные казусы в разработке и тестировании ПО?
• Новое – хорошо забытое старое. Упоминания об итеративной модели разработки (ныне agile) восходят к середине прошлого века.
• Краткое введение в Pig – инструмент для эффективного анализа больших объемов данных.
• Альтернативы для Google Code Search, решение о закрытии которого принято в высших кругах поискового гиганта.
• Горящие глаза или энтузиазм: что наиболее ценно в разработке игр и не только? И еще об играх: честная игра или мухлеж? Может ли игра быть одновременно честной и увлекательной?
• Grig Gheorghiu делится практическими примерами работы с Elastic MapReduce в Amazon.
• IBM developerWorks: первые шаги в JavaScript.
• Честность и искренность окупаются: темные и светлые паттерны в графическом интерфейсе.
• Приложения на базе Google Apps Engine: маленькие улучшения приводят к серьезному приросту производительности.
• Web-разработка в октябре: обзор событий и инструментов.
• Randall Degges, счастливый программист, рассуждает о сроках завершения проекта: пять правил, облегчающих жизнь.
Отладка приложений
• Неувядаемый Mark Russinovich рассказывает о том как Process Monitor помог выявить причину ошибки при установке клиентской части Windows Intune.
• Valgrind memcheck помогает выявлять утечки памяти в приложениях на С и С++.
• Отладка приложений в Linux с помощью strace: семь примеров.
• Mark Russinovich рассказывает о возможных коллизиях при клонировании диска с помощью Sysinternals Disk2vhd и путях их устранения.
• Perl-скрипт позволяет оккупировать необходимый объем оперативной памяти в Linux, а оставшийся объем будет задействован при тестировании производительности заданного приложения.
Тестирование программного обеспечения
• I.M.Testy размышляет о тестировании API в сравнении с тестированием через пользовательский интерфейс и с помощью модульных тестов.
• The Monday Times: подборка публикаций по тестированию и обеспечению качества ПО.
• ”Перед лицом своих товарищей торжественно клянусь”: James Bach формулирует обязательства тестировщика перед разработчиком.
• В ноябрьском выпуске The Testing Planet: будущее тестирования, мобильные платформы, автотесты, Scrum, найм тестировщиков и другие темы.
• Социум тестировщиков: что они любят, как проходят интервью, как ищут работу и как находят их.
• Darren McMillan доказывает, что визуализация функциональности приложения в виде карт и схем позволит творчески переосмыслить подходы к его разработке и тестированию.
• Где эта улица, где этот дом: при тестировании стоит выбирать существующие субъекты и объекты.
Инструменты автоматизации
• Adam Goucher выпустил очередную подборку публикаций по Selenium и смежным областям.
• Adam Goucher: если вам интересен Selenium, то эти материалы вас так же заинтересуют. И еще одна подборка. И еще.
• Сможет ли BITE превзойти Selenium в создании и поддержке автотестов для сайтов с часто меняющимся интерфейсом?
• GTAC 2011: материалы конференции, посвященной автоматизации тестирования ПО, выложены в открытый доступ.
• Alan Page призывает уделять большее внимание автоматизации анализа автотестов: по отрицательному результату прогона автотеста тестировщик должен сразу понять, в чем загвоздка.
Системное администрирование
• Linux: как проверить целостность файловой системы и отслеживать свободное дисковое пространство.
• Двадцать уроков по обеспечению безопасности PHP-приложений для системных администраторов.
• Kendra Little рассыпается в похвалах перед Microsoft SQL Server, делая акцент на его наиболее ярких возможностях.
• Scott Hanselman представляет пять интересных утилит для Windows.
Разное
• SOPA подкралась незаметно: к чему может привести новая инициатива по борьбе с пиратским распространением контента?
• Всевышний и программист: создание мира, день первый.
• Google: тяжела и неказиста жизнь простого программиста.
• Глас вопиющего в пустыне: шел по следам родственной души и тоже не нашел затерянный родник.
• Кружок “Умелые руки”: как обеспечить эффективное взаимодействие разработчиков, находящихся в разных частях света?
• Google Verbatim: удобный способ избежать “улучшения” запроса при поиске.
• Наша служба и опасна и трудна: эксперт по безопасности приходит в ресторан…
• What the fuck? Забавные сообщения об ошибках.
• Любовь, похожая на сон: поэзия общения менеджера и разработчика.
• Драмкружок, кружок по фото, но мне еще и петь охота: ну как тут подумать о качестве ПО, когда столько дел?
• Как быстро летит время, или не стареют душой ветераны: 20 лет с момента рождения текстового редактора Vim. Бонус: интерактивное руководство.
• Google демонстрирует чудеса неуважения к пользователю, изменив интерфейс Google Reader и не оставив возможность вернуться к старому интерфейсу (1, 2, 3). Update: рука помощи.
Эпизоды
Б1. Ну, прощайте. Нас нашли и скоро прикончат.
Б2. Бояться нечего. Пока мы есть, Заплатки нет. А когда она придет, нас уже не будет.
Б3. Заплатка – это страшный сон, плод нашего воображения!
Б1. Так может и мы существуем лишь в чьем-то сне?
Б2. Лишь бы Тот, Кому Мы Снимся, не увидел наши сны и не проснулся от испуга!
Б1. Надоело быть на побегушках. Хочу в баг-менеджеры податься.
Б2. Меньше работать, больше получать?
Б1. Вдохновлять команду, разруливать конфликты, мыслить стратегически, нести ответственность за результат!
Б2. Круто! А может и мне в менеджеры?
Б1. Не все хотят быть руководителями и не у всех получится.
Б2. А если смогут и захотят?
Б1. Ужас! Тогда я не смогу меньше работать и больше получать!
Р1. Что значит “throw an exception”?
Р2. Бросить исключение.
Р1. А зачем его бросать?
Р2. Брось, а то систему уронишь!
Что такое качество программного обеспечения и как его улучшить: теория и практика, задачи и решения, подводные камни и обходные пути.