Разработка → Примеры паттернов в реальной жизни
Хорошая, хоть и старая (97 год) статья в которой приведены примеры применения паттернов в вещах, которые не имеют отношения к разработке. Такой подход отлично иллюстрирует паттерны и делает их более доступными для понимания.
Например отлично показан паттерн Фасад: интерфейсы офисных устройств можно сильно упростить с помощью секретарши.
Или например паттерн Бридж, который показан на примере выключателя которым можно управлять лампочкой, вентилятором или любым другим прибором.
Например отлично показан паттерн Фасад: интерфейсы офисных устройств можно сильно упростить с помощью секретарши.
Или например паттерн Бридж, который показан на примере выключателя которым можно управлять лампочкой, вентилятором или любым другим прибором.
Мой бизнес → Упрощаем восприятие продукта: Практические шаги

Мы две недели проектировали и создавали приложение для iPhone. Я послал письмо маме с названием программы и одной строчкой описания этого приложения. Она ответила одной фразой: «Я не понимаю». Мы выбросили исходники и саму программу и начали сначала.
Наиболее важный урок, который мы получили работая с App Store — большинство неудачливых разработчиков App Store все еще не поняли: если по названию и короткому описанию мама сразу понимает что это, программа будет продаваться более чем в 30 экземпляров в день. Если из названия и описания мама не понимает о чем идет речь, программа будет продаваться менее 5 экземпляров в день. К сожалению, другие разработчики App Store не имеют доступа к моей маме или ее вкусным рогаликам, поэтому мы будем и впредь сохранять это стратегическое преимущество.
Основная причина успеха программы: Убедитесь, чтобы описание вашей программы было предельно понятно. Если это не так, то упростите.
Софт → Софт без багов? Мечтать невредно
Не всем софтверным компаниям приходилось иметь дело с ошибками такой степени важности, как были с автомобилями Toyota (на Хабре), но с каждым днем всё более ясно: любая софтверная компания создает продукты со скрытыми дефектами безопасности. Исключений практически нет.Если верить провайдеру услуг по тестированию ПО Veracode, который подготовил отчет к конференции RSA в Сан-Франциско, около 60 процентов ПО, пропущенного через их тестирование за последние 18 месяцев, провалило первый цикл тестов. Как отметил Роджер Оберг, старший вице президент по маркетингу Veracode, это были приложения от производителей, достаточно заботящихся о безопасности, чтобы в первую очередь использовать сервисы Veracode.
Данные Veracode не уникальны. В прошлом году исследование, проведенное WhiteHat Security, выявило, что 82 процента корпоративных вебсайтов содержали в себе уязвимости типа «высокая, критичная или особой важности» в обозримом прошлом, а 63 процента имели такие уязвимости на момент исследования.
Блог им. RodeGO → Разработка под iPhone, Android, BlackBarry, Nokia N97 и т.д. без аппарата
Изумленный топиком «Разработка под яФон без яФона» решил описать чудесный, и главное 100% бесплатный, кроссплатформенный фреймворк для мобильных разрабов. Благодаря этому пакету вся разработка сводится к написанию HTML\CSS\Javascript кода и его отладки на универсальном эмуляторе.
Всеx желающиx — прошу под кат
Всеx желающиx — прошу под кат
Блог им. topchiyev → Четвертая попытка покорить iPhone или четыре моих приложения
Начало
Я всегда интересовался мобильными платформами. Вообще мобильных аппаратов я за свою жизнь поимел, так сказать, много:
- Java ME — Samsung SGH i600, Samsung SGH C100 (прошлый век),
- Palm OS — Sony TJ37,
- Windows Mobile — HP iPAQ HW 6515, iMate SP5 (один из лучших телефонов всех времен и народов), Fujitsu-Siemens Pocket Loox c550 (один из лучших коммуникаторов всех времен и народов),
- Symbian — Nokia E51 (но симбиан мне сразу не понравился).
Возможно я что-то пропустил, но это скорее по-тому, что эти пропущенные гаджеты даже не стоят упоминания.
И наконец iPhone. Вообще в тот день когда прошла презентация устройства я зарекся смотреть эту презентацию. Потому, что боялся что айФон станет моим наваждением. Я знал, что это будет нечто грандиозное. Но через год я все-же посмотрел презентацию и купил телефон.
Управление проектами → Два протокола управления проектами
Доброго времени суток.
Я пришел в управление проектами из программирования. То есть, нет так давно, я еще писал код и мне это очень нравилось. Меня мало беспокоили волнения, происходящие где-то на верху — «у менеджеров». Все поменялось в 2004, когда меня назначили тим лидом.
Это был большой и сложный проект. Мы работали как удаленная офшорная группа в постоянной атмосфере прессинга со стороны менеджмента. Оценки задач спускались сверху, и чтобы хоть как-то справиться с задачами, приходилось работать до позднего вечера и по выходным.
Тогда я начал задумываться о причинах такой ситуации, начал читать посты и книги по менеджменту. Как программист, находящийся под впечатлением революционных архитектурных решений — таких, как MVC и паттерны Фоулера, я полагал, что есть *техническое* решение наших проблем с менеджментом — нужно его только отыскать и применить.
Следующие несколько лет я искал *супер фреймворк* для управления проектами. Но только недавно понял, что его нет и быть не может. Проблема заключается в том, что в разработке ПО одновременно используются 2 конфликтующих протокола общения между участниками Процесса.
Сейчас я расскажу о моем текущем видении проблемы, а также опишу одну из возможных стратегий совместного использования этих двух протоколов.
Я пришел в управление проектами из программирования. То есть, нет так давно, я еще писал код и мне это очень нравилось. Меня мало беспокоили волнения, происходящие где-то на верху — «у менеджеров». Все поменялось в 2004, когда меня назначили тим лидом.
Это был большой и сложный проект. Мы работали как удаленная офшорная группа в постоянной атмосфере прессинга со стороны менеджмента. Оценки задач спускались сверху, и чтобы хоть как-то справиться с задачами, приходилось работать до позднего вечера и по выходным.
Тогда я начал задумываться о причинах такой ситуации, начал читать посты и книги по менеджменту. Как программист, находящийся под впечатлением революционных архитектурных решений — таких, как MVC и паттерны Фоулера, я полагал, что есть *техническое* решение наших проблем с менеджментом — нужно его только отыскать и применить.
Следующие несколько лет я искал *супер фреймворк* для управления проектами. Но только недавно понял, что его нет и быть не может. Проблема заключается в том, что в разработке ПО одновременно используются 2 конфликтующих протокола общения между участниками Процесса.
Сейчас я расскажу о моем текущем видении проблемы, а также опишу одну из возможных стратегий совместного использования этих двух протоколов.
Блог им. Aux → Модификации интерфейса браузера Opera для веб-разработчика
С выходом Opera 10.50 многие потерялись в новой менюшке браузера и в комментариях проскакивают вопросы где, что и как лежит и что вообще веб-разработчику стало неудобно. Поэтому я расскажу как я настроил интерфейс себе и где искать всякие полезные кнопки.
В правый нижний угол я вынес переключатель использования прокси-сервера (чтобы было удобнее работать с Fiddler-ом), переключатель Dragonfly и кнопку вызова консоли с ошибками. Кнопку переключения Dragonfly можно взять в блоге 200ok, все остальные вспомогательные кнопки можно найти в вики NonTroppo, а переключатель прокси есть в стандартном наборе кнопок (Shift+F12 -> Buttons -> Preferences).
Также хочу отметить, что в контекстном меню есть:
Кстати, плюс контекстного меню ещё в том, что оно позволяет выполнять указанные выше манипуляции не только с текущей страницей, но и с контентом внутри фреймов, что иногда бывает полезным.
Ну а выглядит всё это у меня вот так:
В правый нижний угол я вынес переключатель использования прокси-сервера (чтобы было удобнее работать с Fiddler-ом), переключатель Dragonfly и кнопку вызова консоли с ошибками. Кнопку переключения Dragonfly можно взять в блоге 200ok, все остальные вспомогательные кнопки можно найти в вики NonTroppo, а переключатель прокси есть в стандартном наборе кнопок (Shift+F12 -> Buttons -> Preferences).
Также хочу отметить, что в контекстном меню есть:
- пункт Inspect Element, который также приводит к открытию Dragonfly;
- Validate — отправляет исходник текущей страницы в валидатор W3C;
- Open with — позволяет открыть текущую страницу в другом браузере установленном в системе.
Кстати, плюс контекстного меню ещё в том, что оно позволяет выполнять указанные выше манипуляции не только с текущей страницей, но и с контентом внутри фреймов, что иногда бывает полезным.
Ну а выглядит всё это у меня вот так:
Mac OS X → Переlator
По ходу своей работы я сталкиваюсь с маленькими задачами, которые отнимают много времени (при решении «в лоб»). Иногда получается найти средства для быстрого решения этих задач, иногда нет. Во втором случае, чаще всего, я быстренько пишу собственные маленькие программы, которые позволяют максимально упросить решение задачи.
Недавно столкнулся с одной такой задачей. Всё чаще стала возникать необходимость перевести какой-то текст. То на иврите нужно перевести абзац, то на китайском сайте нужно было почитать обсуждение, то при написании письма зарубежным коллегам не получается перевести «хитрое» предложение — приходится обращаться к онлайн сервисам перевода («подглядеть», что подскажут). Я пользовался сервисами ПРОМТ и Google. Такой подход мне начал надоедать, и я за пару вечеров набросал контекстный переводчик, который использует сразу три сервиса от компаний: Google (Google Translator), Microsoft (Bing Translator), ПРОМТ (мобильная версия).

Уверен, что мои наработки кому-то окажутся полезными.
Эту мини-статью я разделю на две части. Первая посвящена тем, кто хочет просто установить программу и пользоваться ей. А вторая, тем только делает первые шаги в освоение разработки «под» Mac OS X и iPhone (сделали первую программа «Конвертер» по руководству от Apple, но уже имеющие желание писать коммерческое ПО).
Недавно столкнулся с одной такой задачей. Всё чаще стала возникать необходимость перевести какой-то текст. То на иврите нужно перевести абзац, то на китайском сайте нужно было почитать обсуждение, то при написании письма зарубежным коллегам не получается перевести «хитрое» предложение — приходится обращаться к онлайн сервисам перевода («подглядеть», что подскажут). Я пользовался сервисами ПРОМТ и Google. Такой подход мне начал надоедать, и я за пару вечеров набросал контекстный переводчик, который использует сразу три сервиса от компаний: Google (Google Translator), Microsoft (Bing Translator), ПРОМТ (мобильная версия).

Уверен, что мои наработки кому-то окажутся полезными.
Эту мини-статью я разделю на две части. Первая посвящена тем, кто хочет просто установить программу и пользоваться ей. А вторая, тем только делает первые шаги в освоение разработки «под» Mac OS X и iPhone (сделали первую программа «Конвертер» по руководству от Apple, но уже имеющие желание писать коммерческое ПО).
Блог им. mr_gorbunov → Любительский аддон к «Космические Рейнджеры 2: Перезагрузка» — «КР2: Революция» [версия 2.0/R4]
Давным-давно на официальном форуме разработчика «Космические Рейнджеры», компании Elemental Games, началась работа над неофициальным аддоном для игры. Толчком для начала процесса послужило закрытия таблицы рекордов (ТР), единственной онлайн-составляющей игры, которая двигала игроков к переигровки партии, а также, в свете данных событий, открытие инструментария по работе с игровыми скриптами.
Собственно, ТР закрыли из-за появления трейнера, который создали ребята из StarMind, но винить их в этом глупо. EG уже к тому времени распалась на собственно EG и Katauri Int., потому патчи делать было либо некому, либо было не до того.
Спустя еще какой-то срок на форуме случился скандал между директором «Элементалов» и населением форума (подробнее в RN №6, «Тема номера»), который вылился в закрытие этого самого форума разработчиком. Казалось бы, никакой речи о продолжении работы над аддоном идти не может, но фанаты EG — люди настолько лояльные, если не к EG, то хотя бы друг к другу, что перешли на форум аутсорс-разработчика КР2, CHK-Games, а также на созданный с нуля одним из админов хостинга EG форум srclan.org (на SMF 2).
Там работа и продолжилась, неожиданно для всех, все-таки не заглохшая (но перешедшая по эстафете товарищу Богдану Львову); а уже вчера вышел аж третий патч для «КР2: Революция» за номером R4 (релиз 4). На главной странице сайта CHK-Games новость еще не появилась, но сам патч уже доступен на странице скачивания: snk-games.ru/revolution.htm
Собственно, ТР закрыли из-за появления трейнера, который создали ребята из StarMind, но винить их в этом глупо. EG уже к тому времени распалась на собственно EG и Katauri Int., потому патчи делать было либо некому, либо было не до того.
Спустя еще какой-то срок на форуме случился скандал между директором «Элементалов» и населением форума (подробнее в RN №6, «Тема номера»), который вылился в закрытие этого самого форума разработчиком. Казалось бы, никакой речи о продолжении работы над аддоном идти не может, но фанаты EG — люди настолько лояльные, если не к EG, то хотя бы друг к другу, что перешли на форум аутсорс-разработчика КР2, CHK-Games, а также на созданный с нуля одним из админов хостинга EG форум srclan.org (на SMF 2).
Там работа и продолжилась, неожиданно для всех, все-таки не заглохшая (но перешедшая по эстафете товарищу Богдану Львову); а уже вчера вышел аж третий патч для «КР2: Революция» за номером R4 (релиз 4). На главной странице сайта CHK-Games новость еще не появилась, но сам патч уже доступен на странице скачивания: snk-games.ru/revolution.htm
Блог им. case → Интервью портала www.it4business.ru с техническим директором Mail.Ru Владимиром Габриеляном
Как построена работа групп разработки, тестирования и как осуществляется управление проектами? В чем проявляется и проявляется ли вообще специфика вашего бизнеса (я говорю про широкую аудиторию пользователей, миллионные нагрузки на ваши решения и т.д.) на работе внутри ИТ-подразделения Mail.Ru?