Как стать автором
Обновить
23
0
Максим @maxwolf

Пользователь

Отправить сообщение

Не трогайте разработчиков. Отстаньте. Просто не беспокойте

Время на прочтение13 мин
Количество просмотров74K


Всем привет! Меня зовут Ян, я руководитель разработки Департамента ИТ инвестиционного бизнеса Газпромбанка. Совершенно неожиданно я занял первое место на конференции Highload++ с докладом про то, как организована работа в наших командах разработки.

Очень коротко: мы пересобрали процесс разработки как таковой, постаравшись выкинуть оттуда явно кривые решения. Получилось следующее: каждые две недели в команде есть дежурный, который отвечает вообще за все внешние коммуникации. То есть он не разрабатывает, а ловит всех входящих в мессенджерах и в личке и не даёт им пробиться до самой команды. Естественно, этот дежурный знает всё происходящее и может ответить на любой вопрос, а это требует и понимания архитектуры, и знания интерфейсов, и понимания особенностей кода коллег.

В результате из простой задачи «не трогайте разработчиков» получилось сделать и очень правильное обучение (если вы дежурите, то у вас нет шансов не разбираться во всех процессах команды), и снижение техдолга (дежурный не берёт таски по фичам на спринты, но может заниматься документацией и всякими вещами в наведении порядка, до чего обычно не доходят руки), и много чего ещё. Сначала казалось, что за это мы платим снижением эффективности команды на 8–10 % (ведь мы выключаем дежурного из разработки), но на деле оказалось, что эффективность даже растёт. Есть ряд вещей, которые очень поменялись и в управлении такими командами в лучшую сторону.

Естественно, такой подход имеет кучу подводных камней и подходит далеко не всем и не каждому типу команд.

Сейчас расскажу про практический опыт.
Читать дальше →
Всего голосов 190: ↑172 и ↓18+154
Комментарии79

«Синдром сантехника»: правила работы с легаси-кодом в тестировании

Время на прочтение9 мин
Количество просмотров18K


Многие сталкивались с новичком, который приходил в проект и заявлял, что «все необходимо срочно переделать». А некоторые и сами это говорили или думали. Это — «синдром сантехника»: поведение, характеризующееся желанием все сделать по-своему, «правильно», при работе над новым проектом или при переходе на новую работу. А значит, существующий код, технологии или инструменты нужно переписать, желательно «под себя». Тема была бы банальной, если бы не повторялась так часто от проекта к проекту, с каждым новым набором штата.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии48

Байесовские многорукие бандиты против A/B тестов

Время на прочтение20 мин
Количество просмотров62K

Здравствуйте, коллеги. Рассмотрим обычный онлайн-эксперимент в некоторой компании «Усы и когти». У неё есть веб-сайт, на котором есть красная кнопка в форме прямоугольника с закругленными краями. Если пользователь нажимает на эту кнопку, то где-то в мире мурлычет от радости один котенок. Задача компании — максимизация мурлыкания. Также есть отдел маркетинга, который усердно исследует формы кнопок и то, как они влияют на конверсию показов в клико-мурлыкания. Потратив почти весь бюджет компании на уникальные исследования, отдел маркетинга разделился на четыре противоборствующие группировоки. У каждой группировки есть своя гениальная идея того, как должна выглядеть кнопка. В целом никто не против формы кнопки, но красный цвет раздражает всех маркетологов, и в итоге было предложено четыре альтернативных варианта. На самом деле, даже не так важно, какие именно это варианты, нас интересует тот вариант, который максимизирует мурлыкания. Маркетинг предлагает провести A/B/n-тест, но мы не согласны: и так на эти сомнительные исследования спущено денег немерено. Попробуем осчастливить как можно больше котят и сэкономить на трафике. Для оптимизации трафика, пущенного на тесты, мы будем использовать шайку многоруких байесовских бандитов (bayesian multi-armed bandits). Вперед.

Читать дальше →
Всего голосов 67: ↑65 и ↓2+63
Комментарии50

Каково это — быть разработчиком в России, когда тебе сорок

Время на прочтение37 мин
Количество просмотров161K
Привет всем, я — сорокалетний программист-самоучка, а это моя история.

Пару недель назад я наткнулся на график распределения людей, интересующихся технологиями, ИТ и программированием. И он заставил меня задуматься о моей карьере.



Через каких-то 20 лет мне стукнет 60. И вероятность того, что я еще смогу заниматься тем, для чего был создан, составляет очень крошечную величину. Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 1990 году, через год после того, как мне на 14-тилетие родители подарили ПЭВМ «Микроша».
Читать дальше →
Всего голосов 353: ↑338 и ↓15+323
Комментарии788

Разработка ПО авионики

Время на прочтение14 мин
Количество просмотров78K
В основе разработки ПО авионики лежит основополагающий стандарт RTCA\DO-178B. Несмотря на первый взгляд на его отстранённость от непосредственной рутины программиста, он описывает весь процесс разработки и выдвигает требования к подобному ПО. Тем не менее, в данной статье речь пойдёт и о том, как всё происходит на самом деле, на основе личного опыта разработки систем контроля и управления полётом, систем посадки и пр. для самолётов и вертолётов.

image
Читать дальше →
Всего голосов 225: ↑220 и ↓5+215
Комментарии96

Отладка самолета? Это очень просто!

Время на прочтение13 мин
Количество просмотров119K
Некоторое время назад мне пришлось очень плотно поучаствовать в приемо-сдаточных испытаниях самолета. Эти испытания были основной частью процесса передачи свежеизготовленного, самого (по моему мнению) технически продвинутого на настоящий момент времени бизнес-джета от производителя заказчику. Казалось бы, причем здесь тестирование, разработка, да и вообще тематика Хабра? Желающие узнать это могут перевернуть страницу и прочитать довольно много текста, причем вообще без картинок.
Читать дальше →
Всего голосов 262: ↑259 и ↓3+256
Комментарии150

Как новые руководители разрушают доверенные им компании

Время на прочтение26 мин
Количество просмотров400K
Эта статья – о рисках смены руководства в больших компаниях и характерных явлениях при попытках игнорировать закон эффективного управления собственностью:
Эффективно управлять можно только той собственностью, которую мог бы создать сам.
Кто не может создать, – будет только разрушать!
И.А. Дедюхова, Кодекс Хамурапи
Картинка для привлечения внимания читателей из поколений Y и Z:


Краткое содержание


Новый директор себе в подчиненные и советники пригласит своих «проверенных людей». Увеличение штата топ-менеджеров в условиях фиксированного ФОТ повлечет за собой сокращение рядовых сотрудников на значительный процент.
Новый директор в первую очередь будет сокращать те подразделения, работу которых он не понимает. Под прессом психологического давления руководители этих подразделений возмут на себя обязательства самостоятельно разработать планы по сокращению и принять на себя все риски их реализации.
Сокращения пройдут под флагом повышения эффективности, но для «непонятных директору» подразделений не смогут сформулировать критерии этой эффективности, кроме «минимизации затрат». Цель по минимизации затрат без дополнительных обоснованных ограничений – это цель по уничтожению, и не имеет отношения к настоящей оптимизации.
Отсекая непонятные ему части компании (выводя в аутсорс и т.п.), директор попытается превратить компанию в ту, работу которой он полностью способен понять, которой он в полной мере способен управлять.
Проблему нехватки знаний в технической области новый директор и его команда компенсируют «помощью» от западных консалтинговых компаний. Это приведет к ситуации внешнего управления, причем без всякой ответственности за диктуемые извне решения.
Внешняя и внутренняя отчетность о работе компании до самого конца не будет показывать никаких признаков проблем, т.к. тому, кто принес плохие вести не выдают премию, а рубят голову.


Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии95

Каково это — быть разработчиком, когда тебе сорок

Время на прочтение18 мин
Количество просмотров229K
Примечание от переводчика:

Этот пост был написан и опубликован на Medium разработчиком приложений Адрианом Космачевским из Швейцарии. Кроме подготовки перевода его публикации, я также пригласил и самого автора, Адриана ( akosma ), на Хабр, для того, чтобы он смог лично ответить на любые вопросы участников сообщества, если таковые возникнут. Думаю, для общего удобства при общении в комментариях с ним стоит использовать английский (и, при желании, дублировать на русском).



Привет всем, я — сорокадвухлетний программист-самоучка, а это моя история.

Пару недель назад я наткнулся на твит, в котором была картинка, прикрепленная ниже, и он заставил меня задуматься о моей карьере.

image

Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 10 часов утра 6 октября 1997 года, в городе Оливос, к северу от Буэнос-Айреса, в Аргентине. Был понедельник. Не так давно я праздновал свой 24-й день рождения.

Мир в 1997 году


Тогда он был немного другим. На веб-сайтах не было предупреждений об использовании cookie. Новаторскими в сети были сайты вида Excite.com, а моим любимым поисковиком был AltaVista.

Мой электронный ящик имел вид kosmacze@sc2a.unige.ch и был расположен на личном веб-сайте, который размещался по адресу http://sc2a.unige.ch/~kosmacze. Тогда мы еще оплакивали принцессу Диану, а Стив Джобс только-только вернулся на роль CEO и убедил Microsoft «вбросить» в Apple Computer 150 миллионов долларов. Digital Equipment Corporation подала в суд на Dell, останки Че Гевары вернули на Кубу, только начался четвертый (!) сезон «Друзей». Был убит Джанни Версаче, скончались Мать Тереза, Рой Лихтенштейн и Жанна Кальман. Люди зависали за Final Fantasy 7 на PlayStation, будто бы были наркоманами, Би-Би-2 начал вещание телепузиков, а Кэмерон только собирался показать миру свой «Титаник».
Читать дальше →
Всего голосов 200: ↑194 и ↓6+188
Комментарии321

Памятка по базовой верстке статьи для Хабра без использования Markdown-разметки

Время на прочтение5 мин
Количество просмотров46K
На Хабре, по меркам старожилов, я совсем недавно, всего два года, но пишу активно, по возможности каждый день. Так вот, читая статьи, да и просто прокручивая ленту свежих публикаций как на Хабре, так и на GT, я понял, что многие просто не могут совладать с версткой текста и, как следствие, достаточно часто годные публикации хоронятся их же авторами из-за нечитабельности текста. Или отпугивает кривая КДПВ, или еще что произойдет.

Возможно, для опытных авторов пост покажется капитанским, мелочным, или еще каким, ведь главное содержание, но тем, кто хочет пройти песочницу и влиться в Хабра-сообщество, я уверен, он поможет не только написать что-то полезное, но и красиво свой труд преподнести.

Картинка Для Привлечения Внимания и выравнивание по левому краю


Так уж сложилось, что вся лента Хабрахабра выровнена по левому краю. По этой причине опытные авторы небольшие изображения оставляют слева или используют картинки шириной в 800-1000 px. Отдельно хочется заметить, что чуть ли не лучшим является соотношение КДПВ 2 к 1, т.е. изображения 800х400 px. Подобная пропорция позволяет SMM-щику соц. сетей не изгаляться с вашей картинкой (а то и вовсе искать что-то другое, более подходящее по размерам), а использовать оригинал, не нарушая задумки автора.
Читать дальше →
Всего голосов 67: ↑61 и ↓6+55
Комментарии44

Миром движет язык С

Время на прочтение10 мин
Количество просмотров57K


Недавно мы опубликовали перевод статьи, в которой приводились аргументы в пользу изучения языков семейства С. Этот пост вызвал немало споров, в том числе была высказана точка зрения, что языки семейства С сходят со сцены; их востребованность хоть и велика, но снижается. Возможно, это и так. Но всё же язык С по-прежнему остаётся одним из наиболее распространённых.
Читать дальше →
Всего голосов 103: ↑86 и ↓17+69
Комментарии69

Как улучшить свой стиль программирования?

Время на прочтение6 мин
Количество просмотров139K

Исповедь 1


Я — разработчик. От своих работодателей я постоянно слышу, что работаю медленно и часто всё усложняю без веской причины. И что мне пора бы что-то с этим сделать. Во избежание.

Весь мой опыт программирования складывается из университетских работ и пары лет пребывания в различных компаниях. Критикующие меня люди неоднократно говорили мне, что в целом я разбираюсь в теме, так что я далеко не клинический случай, как можно было подумать. Однако, очевидно, я выработал совсем не те программистские привычки (как минимум, на взгляд работодателя) и мне нужно срочно изменить их. Везде, где бы я ни работал, мои решения, использующие иерархии мелких классов с делегированием поведения, признавались плохими. Говорят, будто так и надо писать, но это не так. Потому что всё это «как надо» может стоить мне работы.
Читать дальше →
Всего голосов 235: ↑202 и ↓33+169
Комментарии248

Лучшие грабли российских IT-стартапов

Время на прочтение7 мин
Количество просмотров70K


1. Упарываться по хардкору
Это не ошибка, но очень характерная ситуация для IT-сферы. Пока другие стартаперы не имеют продукта, зато рассылают релизы со скриншотами, пьют смузи, выступают на конференциях и выставках, айтишники пишут код. Когда прототип собран и дело доходит до поиска инвестора, становится понятно, что пиар тоже был нужен. Вот только начинать его надо было месяца так два назад.

2. «Сам дурак»
Большая проблема — нежелание слушать мнение окружающих. Когда половина проекта готова и внезапно становится понятно, что проект нежизнеспособен, есть два варианта: резко меняться или сворачиваться. Знаете, что часто делают руководители IT-стартапов? Перестают слушать людей снаружи, превращают команду в секту и упорно допиливают продукт. Потому что полработы уже сделано.

3. Не знать конкурентов
Офигенный подход аутистов — взять и сделать прототип без изучения рынка. Незнание прямого конкурента, косвенного конкурента и западных аналогов продукта — это не самая хорошая идея. Нужно смотреть, кто уже работал в этом направлении и, главное, с какими проблемами сталкивался. Потому что эти проблемы придут к вам. Ещё полезно замерять показатели конкурентов и сравнивать со своими. Если конкурентов нет — это повод насторожиться. Возможно, ваш продукт никому не нужен.
Читать дальше →
Всего голосов 122: ↑99 и ↓23+76
Комментарии47

Посты-рекордсмены

Время на прочтение5 мин
Количество просмотров104K
На Хабре я недавно (чуть меньше месяца), до этого Хабр практически не читал. Пришёл, огляделся, походил по тематическим «хабам», почитал «Лучшее за всё время», просмотрел статьи отдельных, заинтересовавших меня персонажей и понял, что для того, чтобы получше понять, как живёт и чем дышит это замечательное сообщество, мне придётся Хабр распарсить и позадавать ему разные вопросы. К тому же, раз уж в своих статьях я писал в основном об автореферентности в разных её проявлениях, как не написать на Хабре статью о Хабре?

Посмотрю, интересно ли это всё кому-либо кроме меня. Если интересно, напишу ещё несколько постов, идей и материала для этого более чем достаточно.

Если я ничего не пропустил в интерфейсе сайта, единственные списки самых-самых, которые можно посмотреть — это общий рейтинг пользователей и список статей, т.н. «Лучшее за всё время». Оба списка отсортированы по рейтингу (пользователей и статей, соответственно). Между тем, существует ещё куча параметров, по которым было бы интересно всё отранжировать.
Читать дальше →
Всего голосов 215: ↑202 и ↓13+189
Комментарии59

Восстановление расфокусированных и смазанных изображений. Практика

Время на прочтение10 мин
Количество просмотров347K
Не так давно я опубликовал на хабре первую часть статьи по восстановлению расфокусированных и смазанных изображений, где описывалась теоретическая часть. Эта тема, судя по комментариям, вызвала немало интереса и я решил продолжить это направление и показать вам какие же проблемы появляются при практической реализации казалось бы простых формул.

В дополнение к этому я написал демонстрационную программу, в которой реализованы основные алгоритмы по устранению расфокусировки и смаза. Программа выложена на GitHub вместе с исходниками и дистрибутивами.

Ниже показан результат обработки реального размытого изображения (не с синтетическим размытием). Исходное изображение было получено камерой Canon 500D с объективом EF 85mm/1.8. Фокусировка была выставлена вручную, чтобы получить размытие. Как видно, текст совершенно не читается, лишь угадывается диалоговое окно Windows 7.



И вот результат обработки:



Практически весь текст читается достаточно хорошо, хотя и появились некоторые характерные искажения.

Под катом подробное описание проблем деконволюции, способов их решения, а также множество примеров и сравнений. Осторожно, много картинок!
Читать дальше →
Всего голосов 459: ↑456 и ↓3+453
Комментарии141

Информация

В рейтинге
3 587-й
Откуда
Vällingby, Stockholms Län, Швеция
Дата рождения
Зарегистрирован
Активность