Плохой программист занимается кодом, хороший программист — системой.
Мейлру забанил мой почтовик как спамерский. Написал в техподдержку. Разбанили.
Так дико приятно, когда процессы работают.
Так дико приятно, когда процессы работают.
Forwarded from на нашей фабричке...
Последние 5% работы занимают 50% времени.
И вот ты такой замечательный, сделал очередной проект на 95% и четко понимаешь, что никаких сюрпризов не будет, осталось реально всего пять процентов и через неделю-другую всё будет абсолютно точно завершено.
А потом проходит два месяца и снова надо доделать те же 5%, пара недель. Заказчик злится - он рассчитывал всё давно получить и продавать, разработчики расстроены - они рассчитывали давно всё сдать, премироваться и нырнуть в новое-интересное.
А всё дело в проклятом правиле Парето. Все знают его как 80-20. А на самом деле оно 80-20, 15-30 и 5-50.
80% работы делаются за 20% времени. Еще 15% делаются за 30% времени, а последние 5 - за 50.
И вот ты такой замечательный, сделал очередной проект на 95% и четко понимаешь, что никаких сюрпризов не будет, осталось реально всего пять процентов и через неделю-другую всё будет абсолютно точно завершено.
А потом проходит два месяца и снова надо доделать те же 5%, пара недель. Заказчик злится - он рассчитывал всё давно получить и продавать, разработчики расстроены - они рассчитывали давно всё сдать, премироваться и нырнуть в новое-интересное.
А всё дело в проклятом правиле Парето. Все знают его как 80-20. А на самом деле оно 80-20, 15-30 и 5-50.
80% работы делаются за 20% времени. Еще 15% делаются за 30% времени, а последние 5 - за 50.
Чтение архива Дейкстры доставляет. Такой человек совершенно не мог бы существовать в наше время, его попросту уничтожили за тотальную беспощадность и неполиткорректность.
Ну и просто любимый фрагмент из дневника за 1976 год, когда он приезжал в СССР:
I did my best to behave as one should in bugged rooms, but I found it difficult. I remember that, when I asked the IBM-er in Hursley whether the room in which he received me, was bugged, the IBM-er orally protested "No, of course not." while nodding affirmatively. Similar situation while I paid my compliments to the Dutch embassador in Moscow. I remembered never to comment on our Russian hosts but when, in Moscow my hotel room I started to explain to Tony the type of computer architecture I had been thinking about lately, better trained than I Tony immediately suggested a walk. It did not rain and we walked for nearly two hours. It took Tony a long time to grasp the idea, so it might be a little bit revolutionary. Eventually he got quite excited, but agreed that several critical issues have to be investigated rather carefully, before the idea can be proposed as a realistic one. Then we returned to the hotel and went to bed.
Ну и просто любимый фрагмент из дневника за 1976 год, когда он приезжал в СССР:
I did my best to behave as one should in bugged rooms, but I found it difficult. I remember that, when I asked the IBM-er in Hursley whether the room in which he received me, was bugged, the IBM-er orally protested "No, of course not." while nodding affirmatively. Similar situation while I paid my compliments to the Dutch embassador in Moscow. I remembered never to comment on our Russian hosts but when, in Moscow my hotel room I started to explain to Tony the type of computer architecture I had been thinking about lately, better trained than I Tony immediately suggested a walk. It did not rain and we walked for nearly two hours. It took Tony a long time to grasp the idea, so it might be a little bit revolutionary. Eventually he got quite excited, but agreed that several critical issues have to be investigated rather carefully, before the idea can be proposed as a realistic one. Then we returned to the hotel and went to bed.
Один из ключевых стандартов системной инженерии называется так, что очень трудно поверить, что он хоть какое-то отношение к айти может иметь:
Industrial automation systems and integration — Integration of life-cycle data for process plants including oil and gas production facilities
Industrial automation systems and integration — Integration of life-cycle data for process plants including oil and gas production facilities
Система для системной инженерии — это только созданная человеком система. Все остальные сущности, даже если они включают слово «система», нас не интересуют: классификационные системы, биологические системы и так далее.
Наши системы: ракета SpaceX, сайт Госуслуги, самолёт Boeing 666 и так далее.
Каждая наша система проходит через одинаковые стадии: разработка, создание, эксплуатация и уничтожение.
Каждая наша система является частью некоей более масштабной над-систему и включает в себя менее масштабные под-системы.
Наши системы: ракета SpaceX, сайт Госуслуги, самолёт Boeing 666 и так далее.
Каждая наша система проходит через одинаковые стадии: разработка, создание, эксплуатация и уничтожение.
Каждая наша система является частью некоей более масштабной над-систему и включает в себя менее масштабные под-системы.
Процессы намного важнее технологий. В дальней перспективе хорошо организованная компания будет успешнее, чем технологичная, но хаотичная.
Но как же это сложно! Без конкретной и непрерывной работы по установлению порядка дела неизбежно скатываются в хаос. Они не могут сами по себе организоваться, обязательно нужны люди, которые будут направлять и контролировать. Процессы не обязательно должны быть строго формализованными, «мудрость» можно голосом и личным примером передавать, без бюрократии. Найм сотрудника, ввод сотрудника в строй (обучение, ориентировка), сопровождение сотрудника, увольнение — стандартный жизненный цикл.
Если компания все эти вещи не пускает на самотёк, а контролирует и корректирует (отталкиваясь от обратной связи, то есть контроля), то дела у неё будут как минимум неплохо.
Формализованные процессы делают работу в компании сильно прозрачнее и проще всего их организовать в компании с удалённой формой работы. В таком режиме просто не получится схалявить и «рассказать голосом» или «показать невербальным примером», без должной качественной бюрократии такая компания не выживет.
Но как же это сложно! Без конкретной и непрерывной работы по установлению порядка дела неизбежно скатываются в хаос. Они не могут сами по себе организоваться, обязательно нужны люди, которые будут направлять и контролировать. Процессы не обязательно должны быть строго формализованными, «мудрость» можно голосом и личным примером передавать, без бюрократии. Найм сотрудника, ввод сотрудника в строй (обучение, ориентировка), сопровождение сотрудника, увольнение — стандартный жизненный цикл.
Если компания все эти вещи не пускает на самотёк, а контролирует и корректирует (отталкиваясь от обратной связи, то есть контроля), то дела у неё будут как минимум неплохо.
Формализованные процессы делают работу в компании сильно прозрачнее и проще всего их организовать в компании с удалённой формой работы. В таком режиме просто не получится схалявить и «рассказать голосом» или «показать невербальным примером», без должной качественной бюрократии такая компания не выживет.
Мне довольно часто пишут люди по поводу статей из блога. Почему-то самой популярной оказалась серия статей про смарткарты, одна из рассказанных историй оказалась очень крутой.
Автор — ветеринар, по работе использует автоматический анализатор крови, работающий на смарткартах. Выбираешь смарткартку с параметрами типа животного, вставляешь её, вставляешь пробирку с кровью, получаешь результат. Анализатор старый, но очень надёжный. Вот только карты периодически не читаются. По этому вопросу автор и обратился: можно ли карты скопировать, чтобы продолжить работу. Новые карты купить невозможно, б/у тоже, так как устройство чрезвычайно узкоспециальное и в сети по нему практически нет упоминаний.
Но всё-таки удалось нагуглить кусочки информации, из которых выяснилось, что шансов нет — формат карт очень редкий, чип на них не просто чип памяти, а настоящий криптопроцессор без обходных путей, с которого данные не слить.
Вот такая вот фигня: слабым звеном системы является копеечный модуль, замены которому не найти.
Автор — ветеринар, по работе использует автоматический анализатор крови, работающий на смарткартах. Выбираешь смарткартку с параметрами типа животного, вставляешь её, вставляешь пробирку с кровью, получаешь результат. Анализатор старый, но очень надёжный. Вот только карты периодически не читаются. По этому вопросу автор и обратился: можно ли карты скопировать, чтобы продолжить работу. Новые карты купить невозможно, б/у тоже, так как устройство чрезвычайно узкоспециальное и в сети по нему практически нет упоминаний.
Но всё-таки удалось нагуглить кусочки информации, из которых выяснилось, что шансов нет — формат карт очень редкий, чип на них не просто чип памяти, а настоящий криптопроцессор без обходных путей, с которого данные не слить.
Вот такая вот фигня: слабым звеном системы является копеечный модуль, замены которому не найти.
https://www.theatlantic.com/technology/archive/2017/10/the-computer-that-predicted-the-us-would-win-the-vietnam-war/542046/
Отличный текст о бигдате и как она впервые зафейлила целую войну.
Отличный текст о бигдате и как она впервые зафейлила целую войну.
The Atlantic
The Computer That Predicted the U.S. Would Win the Vietnam War
A cautionary tale about the dangers of big data
В России существует бумажная ИТ-пресса. Смысл её существования не очень понятен. По большей части тамошние интервью и статьи выглядят проплаченной заказухой. Пишут не о программировании, а в основном о менеджменте и технике. Плюс перепечатывают пресс-релизы российских ИТ-фирм и называют это Новости компаний.
Если вы читали хабр, то ит-пресса — это нечто абсолютно перпендикулярное ему. Там нет статей про новые технологии, про изменения в API твитера или новый фреймворк фейсбука. Целевая аудитория — не технари, а, скорее, менеджеры, причём не обязательно в ИТ-компаниях. Обычные темы: документооборот, серверное и сетевое оборудование, взаимоотношения ИТ с властью и государством, безопасность. Короче, любые темы, пересекающиеся с ИТ и бизнесом. Куча людей (программистов) даже не подозревает, что в РФ существует огромный слой компаний, не пишущих по два фреймворка в год, а зарабатывающих решением проблем других компаний.
Вот самые известные:
* IT Week (это бывший PCweek/RE)
* CRN ИТ бизнес
* it expert
* IT-Manager
* IT news
Последние годы сильно проредили рынок бумажной ИТ-прессы, а дальше будет ещё хуже, формат откровенно не выживает.
Если вы читали хабр, то ит-пресса — это нечто абсолютно перпендикулярное ему. Там нет статей про новые технологии, про изменения в API твитера или новый фреймворк фейсбука. Целевая аудитория — не технари, а, скорее, менеджеры, причём не обязательно в ИТ-компаниях. Обычные темы: документооборот, серверное и сетевое оборудование, взаимоотношения ИТ с властью и государством, безопасность. Короче, любые темы, пересекающиеся с ИТ и бизнесом. Куча людей (программистов) даже не подозревает, что в РФ существует огромный слой компаний, не пишущих по два фреймворка в год, а зарабатывающих решением проблем других компаний.
Вот самые известные:
* IT Week (это бывший PCweek/RE)
* CRN ИТ бизнес
* it expert
* IT-Manager
* IT news
Последние годы сильно проредили рынок бумажной ИТ-прессы, а дальше будет ещё хуже, формат откровенно не выживает.
В макосном терминале поддерживаются так называемые Emacs-style хоткеи для редактирования текста, например, сочетание
Установить их можно такой командой в терминале:
Ещё один момент, который почему-то отсутвует в официальных доках. В терминале существует дополнительный текстовый буфер, в который помещается удалённый при помощи хоткеев текст (
Также в этом фиксе я добавил несколько хоткеев, которые в системе реализованы, но почему-то не выведены в документацию, например,
Control-A перемещает курсор в начало строки, а Control-E в конец, на сайте apple эти хоткеи описаны в разделе Edit a command line, однако с ними есть проблема — они не работают в русской раскладке. Несколько лет назад я с этим вопросом разобрался и написал своеобразный фикс, который добавляет в таблицу хоткеев их же, но в русской раскладке. Всё это применимо только для PC-варианта раскладки!Установить их можно такой командой в терминале:
curl 'https://raw.githubusercontent.com/sigsergv/dotfiles/master/mac/russian-shortcuts/dist-install.sh' -o /tmp/k-dist-install.sh && bash /tmp/k-dist-install.shПосле чего терминал перезапустить и всё заработает.
Ещё один момент, который почему-то отсутвует в официальных доках. В терминале существует дополнительный текстовый буфер, в который помещается удалённый при помощи хоткеев текст (
Control-K, Control-U). И этот текст можно в любой момент вставить обратно хоткеем Control-Y.Также в этом фиксе я добавил несколько хоткеев, которые в системе реализованы, но почему-то не выведены в документацию, например,
Control-T для перестановки текущего и предыдущего символов. Полный список в репозитории.Сначала новость. Как её следует читать: толпа обезьян за два дня написала красивый прототип сервиса, а сми из этого популизма раздули историю.
Что при этом остаётся за кадром: кто и на какие деньги будет заниматься сопровождением и развитием этого сервиса? Вдумайтесь, контракт на четыре года, 16 миллионов евро. Это четыре миллиона в год. Допустим, нам нужно десять человек на продукт (это очень оптимистично), каждый из них получает, допустим, 100 000 евро в год. Это уже миллион. Эти десять человек не только программисты, но ещё и тестировщики и другие инженеры. Нужно ещё оборудование, лицензии, это вполне можно в миллион оценить. Остаётся два миллиона в год чистой прибыли, скорее даже меньше. Не там уж и фантастически много.
Теперь вернёмся к этой поделке. Её программисты «подарили», круто. А что дальше? Кто будет с этим подарком разбираться и на какие деньги? Кто вообще занимался приёмкой в эксплуатацию? На выходных — никто. То есть эта система написана почти наверняка совершенно безграмотно с точки зрения государства и теперь её придётся либо выбросить, либо влить кучу бабла, чтобы довести до рабочего состояния.
Что при этом остаётся за кадром: кто и на какие деньги будет заниматься сопровождением и развитием этого сервиса? Вдумайтесь, контракт на четыре года, 16 миллионов евро. Это четыре миллиона в год. Допустим, нам нужно десять человек на продукт (это очень оптимистично), каждый из них получает, допустим, 100 000 евро в год. Это уже миллион. Эти десять человек не только программисты, но ещё и тестировщики и другие инженеры. Нужно ещё оборудование, лицензии, это вполне можно в миллион оценить. Остаётся два миллиона в год чистой прибыли, скорее даже меньше. Не там уж и фантастически много.
Теперь вернёмся к этой поделке. Её программисты «подарили», круто. А что дальше? Кто будет с этим подарком разбираться и на какие деньги? Кто вообще занимался приёмкой в эксплуатацию? На выходных — никто. То есть эта система написана почти наверняка совершенно безграмотно с точки зрения государства и теперь её придётся либо выбросить, либо влить кучу бабла, чтобы довести до рабочего состояния.
Телеканал Дождь
Чешские программисты за два дня бесплатно создали сервис, на который министр хотел потратить 16 млн евро. Его уволили
Программисты из Чехии бесплатно создали государственный сервис, на который министерство транспорта хотело потратить более 400 миллионов чешских крон (около 16 миллионов евро). На его разработку ушло два дня, и программисты решили его подарить. После этого…
Как тратятся деньги у американских военных.
На программу самолёта F-35 уже потрачено почти 500 миллиардов долларов. Ежегодная оценка проекта выявила кучу дефектов, включая неспособную стрелять прямо пушку и 873 бага в софте.
К сентябрю было выпущено 490 самолётов, на которых работает шесть разных версий ПО, а теперь выходит ещё одна. И ещё куча проблем, но статья заинтересовала не этим в первую очередь. Самое интересное — это принципиальная открытость процесса и публикация результатов. Это очень круто.
На программу самолёта F-35 уже потрачено почти 500 миллиардов долларов. Ежегодная оценка проекта выявила кучу дефектов, включая неспособную стрелять прямо пушку и 873 бага в софте.
К сентябрю было выпущено 490 самолётов, на которых работает шесть разных версий ПО, а теперь выходит ещё одна. И ещё куча проблем, но статья заинтересовала не этим в первую очередь. Самое интересное — это принципиальная открытость процесса и публикация результатов. Это очень круто.
Bloomberg.com
F-35’s Gun That Can’t Shoot Straight Adds to Its Roster of Flaws
Add a gun that can’t shoot straight to the problems that dog Lockheed Martin Corp.’s $428 billion F-35 program, including more than 800 software flaws.
Думаю, все уже слышали, что в Valve (которая steam) действует «плоская» схема сотрудников, без менеджеров. Про неё очень много прекрасно рассказывали, но реальность отрезвляет.
Общая статья о врождённых проблемах псевдо-плоской системы.
И подробный рассказ сотрудника изнутри Valve, как это работает на самом деле.
Всё сводится к тому, что наделённые властью люди таки есть, но они свой статус проявляют только тогда, когда нужно уйти от ответственности. Формально считается, что все равны, однако бо́льшая часть сотрудников равнее.
Общая статья о врождённых проблемах псевдо-плоской системы.
И подробный рассказ сотрудника изнутри Valve, как это работает на самом деле.
Всё сводится к тому, что наделённые властью люди таки есть, но они свой статус проявляют только тогда, когда нужно уйти от ответственности. Формально считается, что все равны, однако бо́льшая часть сотрудников равнее.
Есть такая байка про микрософт времён Балмера. Гении менеджмента придумали эффективную схему stack ranking, это когда раз в год все сотрудники отдела выстраиваются по рейтингу эффективности и 10% самых отстающих увольняют.
Нетрудно догадаться, как эта схема была взломана: отделы специально нанимали заведомо слабых людей, чтобы в конце срока уволили именно их.
Нетрудно догадаться, как эта схема была взломана: отделы специально нанимали заведомо слабых людей, чтобы в конце срока уволили именно их.
В продолжение драмы с «чешскими программистами». Вот краткая выдержка, что именно покрывал контракт на 400 млн крон (16 млн евро) на четыре года:
* создание электронной системы управления разрешениями на проезд;
* веб-сайт/портал для пользователей, где они будут покупать разрешения;
* центр телефонной поддержки на трёх языках: чешском, немецком и английском;
* мобильное приложение;
* различные сервисы юридического и бухгалтерского сопровождения;
* процессинг бумажных разрешений;
* служба разрешения конфликтов;
* серверное и другое оборудование для работы системы.
Уволенный министр отказался разрывать контракт с нанятой для реализации проекта компанией и его можно понять.
* создание электронной системы управления разрешениями на проезд;
* веб-сайт/портал для пользователей, где они будут покупать разрешения;
* центр телефонной поддержки на трёх языках: чешском, немецком и английском;
* мобильное приложение;
* различные сервисы юридического и бухгалтерского сопровождения;
* процессинг бумажных разрешений;
* служба разрешения конфликтов;
* серверное и другое оборудование для работы системы.
Уволенный министр отказался разрывать контракт с нанятой для реализации проекта компанией и его можно понять.
Настоящий годный хороший тестировщик — это не тот, кто может сломать, а тот, кто может подробно описать, как сломал. Хороший тестировщик со временем становится лучшим специалистом по проекту.
Вот вроде бы просто, взять и написано, но этот навык встречается редко, а специально ему нигде толком не учат.
Вот вроде бы просто, взять и написано, но этот навык встречается редко, а специально ему нигде толком не учат.