Инновационный процесс принято разделять на две принципиально разные, но взаимодополняющие фазы: нечёткую начальную (Fuzzy Front End, FFE) и структурированную завершающую (Structured Back End, SBE).
Инновационный процесс принято разделять на две принципиально разные, но взаимодополняющие фазы: нечёткую начальную (Fuzzy Front End, FFE) и структурированную завершающую (Structured Back End, SBE).
Идиома RAII — давно зарекомендовал себя как удобный способ автоматического управления ресурсами в C++. Обычно мы применяем его для управления памятью, файловыми дескрипторами или мьютексами. Однако что, если расширить понятие RAII до управления не только физическими ресурсами, но и логическими контрактами и состояниями системы?
В этой статье я хочу поговорить о том, как RAII можно использовать для контроля жизненного цикла асинхронных операций, транзакций или подписок, гарантируя их корректное завершение или откат до прежнего состояния.
Серверные вычислительные ресурсы распределяются между большинством сервисов Яндекса централизованно. Тем самым все команды — и существующие давно, и собранные вокруг небольших экспериментов — получают мощности, которые им необходимы, чтобы сервис бесперебойно и быстро работал у всех пользователей. Однако этим распределением нужно управлять.
Меня зовут Сергей Фомин, я разработчик Yandex Planner. Мой пост будет посвящён тому, как мы эффективно решаем задачу планирования вычислительных мощностей.
Сначала я расскажу, что такое Yandex Planner и почему мы решили писать своё решение. После этого мы поговорим про то, в чём заключается задача планирования, почему она не такая простая, как может показаться на первый взгляд. И в качестве одного из способов решения задачи мы рассмотрим дефрагментацию ресурсов. Поехали.
Читать полностью »
Не исключено, что вы скажете: «Матрица компетенций? Серьезно?». Скорее всего вы что-то уже слышали про этот инструмент, и даже сделали какие-нибудь выводы, почему не хотите его использовать. Может быть, просто было не до того, или как убийственный аргумент «так сложилось исторически...».
На самом деле это вполне логичный и не новый инструмент, который может быть очень полезен. И внедрять его можно совершенно по-разному, что мы и попробуем вам доказать на практических кейсах двух разных команд — техподдержки и разработки. На их основе вы сами сможете оценить трудозатраты (они могут быть ну очень разные) и прикинуть более подходящий для вас путь в этом направлении.
А при чем тут драконы, объясним под катом.
Изначально создававшиеся для организации коммуникаций внутри предприятий, современные коллаб-платформы в настоящее время способны не только обеспечивать сотрудникам доступ к электронной почте, календарю и другим инструментам для совместной работы, но также могут выполнять и ряд других задач. Например, на такие платформы часто возлагают задачу по управлению некоторыми ресурсами предприятия. Давайте же посмотрим на то, как функциональность управления ресурсами реализована в Zimbra Collaboration Suite.

Процесс создания игр часто связан с отсечением лишнего.
На множество отточенных готовых продуктов, выбравшихся на рынок, приходятся тысячи идей, не доживших до этого, или со временем мутировавших настолько, что в них невозможно узнать их первоначальный вид.
Gamasutra попросила разработчиков игр рассказать о самых запомнившихся идеях, которые пришлось вырезать, и о причинах отказа от них.
Митч Гителмэн, Harebrained Schemes
Разумеется, огромное количество фич сваливается в пропасть между амбициями и практической осуществимостью. По словам Митча Гителмэна, этот разрыв стал ещё больше, когда разработчики начали продавать свои проекты на платформах краудфандинга; он никогда не видел, чтобы масштабы ожиданий когда-нибудь увеличивались.
«Во время нашей кампании на Kickstarter по сбору средств на Shadowrun Returns в 2012 году Harebrained Schemes пришлось получить жёсткий урок управления масштабом проекта».
Читать полностью »
В своей предыдущей статье Канбан в управлении разработкой продуктов в машиностроении мною был рассмотрен опыт внедрения системы канбан в проектной деятельности на производственном предприятии. Система прижилась и подверглась некоторым эволюционным изменениям. Это живой, непрекращающийся процесс. В настоящей статье хочу развить тему управления проектами с точки зрения ресурсов. Приведу примеры оптимизации использования ресурсов в своей практике и покажу правильность выбранных подходов на основании теоретических знаний и практики их использования.

1. Расставлять приоритеты и планировать узкие места
Читать полностью »
На просторах интернета огромное количество информации по управлению проектами в IT-сфере и намного меньше информации о практике применения проектного подхода к разработке продуктов в машиностроении.
Данная статья будет интересна специалистам, которые занимаются управлением разработкой новых продуктов в сфере машиностроения и металлообработки. Инструмент, который я предлагаю использовать — это канбан на фундаменте приоритетов.
Работа с UIImage и UIColor из кода была не слишком удобной, потому что трудно представить себе цвет UIColor(red: 0.2, green: 0.4, blue: 0.6, alpha: 1) или UIImage(named: "pattern25"), если ты не дизайнер, конечно.
Для меня было чудом то, что Apple сделали в последних версиях Playground, а именно


Цвет представлен очень наглядно и при клике на него, можно узнать какие значения RGBA он имеет и подтюнить его по необходимости.
Миниатюры картинок тоже выглядят гораздо нагляднее, чем просто названия ресурсов. К тому же инициализируя UIImage при помощи failable initializer init(named: String) -> UIImage? мы рискуем получить nil, неправильно указав имя ресурса. Литералы же всегда возвращают значение.

В мире существует много регионов, где не хватает воды. Очевидно, хуже всего приходится жителям мест с засушливым климатом и минимальным количеством источников влаги. Водоснабжение в этих регионах зачастую довольно сложное: до того момента, как вода начинает течь из крана, она проходит замысловатый путь от источника к потребителю.
При планировании водоснабжения в таких местах приходится решать сразу несколько сложных проблем. Это баланс потребности/доступные ресурсы, мониторинг погодных условий, обеспечение устойчивости местных экосистем. Решения принимаются на основе информации, которая редко бывает полной, поэтому случаются ошибки. А что, если информации будет больше, и она будет более точной? Компания OmniEarth решила использовать когнитивный сервис IBM Watson для обеспечения эффективного планирования водоснабжения в Калифорнии, США. Когнитивная система обеспечивает сотрудников компании нужными данными около года, и проблемы, ранее казавшиеся неразрешимыми, начинают решаться.
Читать полностью »