Готовый перевод Stevey's Google Platforms Rant / Речь Cтива о платформе Google: Stevey''s Google Platforms Rant
Я проработал в Amazon около шести с половиной лет и теперь работаю в Google столько-же.
Одна вещь, которая поразила меня в обоих компаниях — впечатление, усиливающееся практически каждый день, — это то, что Amazon делает все неправильно, а Google делает все верно. Конечно, это огульное обобщение, но удивительно точное.
Возможно существует сотня или даже две сотни способов сравнивать обе компании, и Google лучше почти во всех кроме троих, есле мне не изменяет память. Я даже завел електронную таблицу для сравнения, но юридический отдел запретил мне показывать ее кому-либо, хоть и отделу кадров она очень понравилась.
Вот просто чтобы вы могли быстро представить: процесс наема в Amazon в корне дефектен тем, что команды сами нанимают себе людей, таким образом их планка [знаний] для нанимаемых невероятно разрозненна между командами несмотря на всяческие попытки выровнять ее.
И их процессы в полном беспорядке, у них практически нет SRE и они заставляют инженеров заниматься практически всем сразу, что почти не оставляет времени на кодинг. Хотя опять же это разнится по командам, так что это воля случая.
Им абсолютно наплевать на благотворительность, помощь нуждающимся, вклад в сообщество, вообще на что-либо подобное. Эти темы вообще не поднимаются, разве только шутки ради. Их помещения это либо вонючие кабинки на обустройство которых не потрачено ни единого цента, либо места общего сбора.
Их оплата и условия работы - дерьмо, хотя и много меньшее в последнее время из-за локальной конкуренции от Google и Facebook. Но у них нет плюшек и социального пакета — они просто пытаются держать зарплату на рыночном уровне, вот и все.
Их исходные тексты - это катастрофа, никаких стандартов или чего-либо, возможно, за исключением некоторых команд, которые вводят их локально.
Честно говоря, у них _есть_ хорошая система версированной библиотеки, которую мы по сути вынуждены эмулировать, и хорошая система публикации-подписки, эквивалента которой у нас также нет. Но по большей части у них просто набор отстойных инструментов, которые читают и пишут информацию конечного автомата в реляционные базы данных. Мы бы не взяли себе большинство из них даже если б они были бесплатными.
Я думаю, что система публикации-подписки и их система книжной полки были двумя из всего трех вещей, которые Amazon делает лучше, чем Google.
Я думаю, что вы можете возразить тем, что их склонность запускаться рано и итерироваться как сумасшедшие — это тоже нечто, что они делают хорошо, но вы также можете сказать и наоборот. Они ставят ранний запуск в приоритет над всем остальным, включая удерживание и инженерную дисциплину и набор других вещей, что может иметь смысл при длительном участии. Таким образом даже то, что это дало им несколько конкурентных преимуществ на рынке, это также создало достаточно других проблем для того, чтобы превратить это в нечно меньшее, чем верный успех.
Но есть еще одна вещь, которую они делают очень-очень хорошо, и это приводит к практически их ВСЕМ политическим, философским и техническим провалам.
Джефф Безос известен своей способностью к микроменеджменту. Он лично контролирует каждый пиксель сайта Amazon. Он нанял Ларри Теслера, главного научного сотрудника Apple и, возможно, самого известного и уважаемого специалиста по человеко-компьютерному взаимодействию в мир. После этого Джефф три года подряд игнорировал все, что ему говорил Ларри. Он бы это делал и дальше если бы Ларри не принял бы мудрого решения покинуть Amazon.
Ларри проводил исследования, которые не оставляли ни капли сомнения в том, что ни один человек не может понять сайт Amazon. Но Безос просто не мог расстаться ни с одной из частицей этого сайта, не мог пожертвовать ни единым пикселем на главной странице. Он относился к каждому из миллионов пикселей как к собственному ребенку. Поэтому они до сих пор в Amazon, в отличие от Ларри.
Нет, микроменеджмент это не тот фактор, по которому Amazon превосходит нас. Т.е., да, они действительно хорошо справляются с ним, но я бы не спешил назвать его их преимуществом.
Я просто пытаюсь установить здесь контекст, чтобы помочь вам понять что произошло. Мы говорим о парне, который со всей серьезностью говорил во многих публичных ситуациях что люди должны платить ему за работу в Amazon.
Он раздает маленькие желтые стикеры со своим именем на них, напоминая людям «кто управляет компанией» когда они с ним не согласны. Этот парень обычный… Стив Джобс, наверное. За исключением вкуса и чувства стиля. Безос супер-умный, не поймите меня неправильно. Просто он заставляет заурядных маньяков контроля выглядеть как обдолбанные хиппи.
Так однажды Джеф Безос выпустил мандат. Он делает это постоянно, конечно, и люди карабкаются как муравьи, по которым вжарили резиновым молотком, каждый раз когда это случается. Но однажды, примерно в 2002-м, плюс-минус год, он издал мандат, который был таким нереальным и выносящим глаза на орбиты, что все его остальные мандаты выглядели как добровольные бонусы.
Его Большой Мандат гласит следующие:
1) Все команды, начиная с сегодняшнего для, представляют свои данные и функционал через интерфейс сервисов.
2) Команды должны общаться между собой через эти интерфейсы.
3) Не будет других способов общения: ни прямых ссылок, ни прямого чтения данных других команд, никакой модели разделенной памяти, никаких лазеек. Разрешено общение только с использованием интерфейсов сервисов по сети.
4) Не имеет значения, какую технологию используэт команда. HTTP, Corba, Pubsub, собственный протокол -- без разници. Бэзоса это не волнует.
5) Все интерфейсы сервисов, без исключений, должны быть спроектированы снизу вверх чтобы быть опубликоваными за пределами компании. Другими словами, команда должна спроектировать интерфейс исходя из того, что он будет опубликован и доступин програмистам во внешнем мире.Никаких исключений.
6) Все, кто не согласен с этим, должны покинуть компанию.
7) Спасибо за внимание; Хорошего дня!
Ха! Те из вас, кто работал в Amazon уже оценили шутку в пункте № 7. Безос в гробу видал ваш день
Пункт № 6, тем не менее, достаточно реалистичен, чтобы воспринимать весь документ всерьез. Безос назначил пару главных "бульдогов" надзирателей для оценки усилий сотрудников и ускорения развития, возглавляемых Главным "Бульдогом" Риком Дэлзеллом
Рик — экс-военный рэнджер, выпускник West Point Academy, экс-боксер, экс-генеральный палач дробь директор по информационным технологиям в Wal*Mart, и большой общительный страшный человек, который часто использовал словосочетание «укрепленный интерфейс». Рик сам был ходячим, говорящим укрепленным интерфейсом, так что излишне говорить, все совершали прямой прогресс и удостоверялись, что Рик знал об этом.
В течении нескольких последующих лет Amazon изнутри преобразовался в сервисно-ориентированную архитектуру. Они получили огромное количество знаний осуществляя это преобразование.
Существовало много документации и практических знаний по сервисно-оринтированной архитектуре (англ. “SOA”), но в огромных масштабах Amazon это было так же полезно, как сказать Индиане Джонсу посмотреть в обе стороны перед переходом улицы. Разработчики Amazon сделали много открытий по ходу. Вот лишь некоторые примеры этих открытий:
- pager escalation становится сложнее, потому что тикет может проходить через 20 сервисных вызовов до того, как определится настоящий владелец. Если каждый прыжок проходит через команду с 15-минутным временем ответа, могут пройти часы до того, как дойдет до подходящей команды, если только не построить большого количества scaffolding, и метрик, и отчетов.
- каждая из соседних команд внезапно становится потенциальным зачинщиком DoS-атак. Невозможно добиться какого-либо реального прогресса, пока в каждом сервисе не будут добавлены серьезные квоты и заслонки.
- мониторинг и контроль качества – это одно и то же. Никогда не думаешь об этом, пока не попробуешь создать большую систему SOA. Но когда твой сервис говорит «о да, я в порядке», вполне вероятно, что единственная часть, которая все еще функционирует на сервере, это маленькая компонента, которая умеет говорить «я в порядке» жизнерадостным голосом дроида.
Чтобы понять, действительно ли сервис реагирует, необходимо делать индивидуальные вызовы. Проблема растет рекурсивно до тех пор, пока Ваш мониторинг не начинает делать всесторонние семантические проверки всей совокупности сервисов и данных, и в такой момент это становится неотличимым от автоматического контроля качества. Поэтому они единое целое.
- если у вас есть сотни служб, и ваш код ОБЯЗАН взаимодействовать с кодом из других групп через эти службы, то вы не сможете найти любую из них без механизма обнаружения служб.
А этого нельзя получить без механизма регистрации сервисов, который сам по себе еще один сервис. Поэтому у Amazon есть универсальный регистр сервисов, где можно рефлексивно узнать о каждом сервисе, какое у него API, а также поднят ли он сейчас и где.
- отладка ошибок в чужом коде горазно труднее, и обычно невозможна, до тех пор, пока пока не найдется универсальный стандартный способ запускать любую службу в отлаживаемой "песочнице".
И это только небольшой пример. Есть десятки, может быть, сотни личных познаний, как эти, которые Amazon’у пришлось открыть опытным путем.
Было много идиотов вокруг экстернализации сервисов, но не так много, как вы могли бы подумать. Организация в сервисы научила команды не доверять друг другу в тех же вещах, в которых они не должны доверять внешним разработчикам.
Эти попытки все еще продолжались, когда я ушел в Google в середине 2005 года, но они уже далеко продвинулись. С того момента, как Безос выпустил свой эдикт, и до момента, как я ушел, Amazon трансформировалась в компанию, которая обо все мыслит в сервисной манере.
Теперь это основа того, как они подходят ко всем дизайнам, включая внутренние дизайны для сотрудников, которые, возможно, никогда не выйдут наружу.
Теперь они делают это не из страха быть уволенными. Конечно, они все еще боятся этого; это одна из частей каждодневной жизни, работая с наводящим ужас пиратом Безососом и другими.
Но они делают сервисы потому, что пришли к пониманию, что это Правильная Вещь. Несомненно, есть «за» и «против» сервисно-ориентированного подхода, и некоторые из этих «против» достаточно обширны. Но в целом, это правильная вещь, потому что сервисно-ориентированный дизайн позволяет создавать Платформы.
Конечно, на это и рассчитывал Безос со своим эдиктом. Он ничуть не заботился (и не заботится) ни о благополучии команд, ни о технологиях, которые они используют, ни о каких-либо деталях того, как они работают, если только они не лажают.
Но Безос понял намного ранее подавляющего большинства «амазонцев», что Amazon должен быть платформой.
Кто бы мог подумать что книжный интернет-магазин должен быть расширяемой, программируемой платформой?
Итак, главная идея, которую понял Безос, это то, что система, построенная для продажи/доставки книг и разной мелочи может превратиться в отличную многопрофильную вычислительную платформу.
И теперь у Amazon есть Elastic Compute Cloud, Elastic MapReduce, Relational Database Service и еще куча разных сервисов, которые можно просмотреть на aws.amazon.com. На этих сервисах уже построены некоторые довольно успешные компании из которых я выделил бы reddit.
Вместе с этим Безос понял, что он не всегда может построить то, что нужно. Я думаю Ларри Теслер серьезно задел Безоса когда сказал, что его мама не может пользоваться проклятым сайтом Amazon
При этом не совсем ясно чью именно маму Теслер имел ввиду. На самом деле это не так уж и важно. Ни одна мама в мире не смогла бы разобаться с этим сайтом. Даже у меня сайт вызывает испуг, а я проработал над ним больше пяти лет. Я даже научился расфокусировать собственное зрение и концентрировать взгляд на центре страницы.
Я не знаю как Безос пришел к пониманию того, что он не сможет построить один продукт, который подойдет всем. Но факт в том, что он осознал это. Есть даже официальное название этого феномена. Он называется Доступностью, и это самый важный фактор в мире вычислений.
САМЫЙ. ВАЖНЫЙ. ФАКТОР.
Если вы типа думаете «чо? Ты имеешь в виду типа Доступность для слепых и глухих?», то вы не одиноки, потому что я пришел к пониманию того, что много, ОЧЕНЬ много людей думают прямо как вы: люди, для которых эта идея не имеет той правильной Доступности, чтобы она могла уложиться в вашей голове.
Это не ваша вина, что вы не понимаете, не более, чем это было бы вашей виной, если бы вы были слепы, глухи, не могли передвигаться или имели какое-либо другое ограничение. Когда программный продукт – или в данном случае идейный продукт – не доступен кому-либо по какой-либо причине, это вина программного продукта или передачи идеи. Это ошибка Доступности.
Как и у всего другого большого и важного в жизни, у Доступности есть близнец-злодей, который, из-за неодинаковой любовью, которую родители проявляли к ним в детстве, вырос в равного по силам принципиального врага (да, у доступности больше одного врага) по имени Безопасность. И, Боже правый, бывают ли эти двое хоть когда-нибудь на равных.
Но я поспорю, что Доступность на самом деле важнее Безопасности, потому что сводя Доступность к нулю означает, что у вас вообще нет никакого продукта, тогда как сводя Безопасность к нулю все еще может дать вам достаточно успешный продукт, такой, как сеть Playstation.
О да. Если вы еще не заметили, я мог бы написать книгу на эту тему. Толстую, с забавными анекдотами о муравьях и резиновых молотках в компаниях, где я работал. Но я никогда не опубликую эти маленькие разглогольствования, и вы никогда их не прочтете, только если не начну закругляться.
Эта третья вещь, которую Google не умеет хорошо делать, это Платформы. Мы не понимаем платформы. Некоторые из вас понимают, но это меньшинство. Это стало мне до боли понятным за последние шесть лет.
Я надеялся, что конкуренция с Microsoft и Amazon, и недавно добавившимся Facebook, заставит нас всех пробудиться и начать делать универсальные сервисы. Не в виде узконаправленных полу-мер, но более-менее в том виде, как это сделал Amazon: все сразу, по-настоящему, без обмана, и относясь к этому, как к нашему первому приоритету.
Но нет. Нет, это всего лишь наш десятый или одиннадцатый приоритет. Или, я не знаю, пятнадцатый. Он слишком низок. Есть несколько команд, которые относятся к этой идее серьезно, но большинство команд либо вообще об этом никогда не думают, или только небольшой процент из них думает об этом в очень узком смысле.
Очень сложно из большинства команд вытянуть хотя бы сервис с заглушками, чтобы получить программный доступ к их данным и вычислениям. Многи из них думают, что делают продукты. И сервис с заглушками – это очень жалкий сервис.
Прокрутите назад и почитайте, что изучили в Amazon, а теперь скажите мне, какая заглушка даст вам такие знания. Я абсолютно убежден, что никакая. Заглушки это круто, но они похожи на детальки, когда Вам нужна машина.
Продукт безполезен без платформы, или, если быть более точным, продукт без платформы всегда будет заменен эквивалентным платформизированным продуктом.
Google+ - первый пример нашего полного правала в понимании платформ, от самого верхнего уровня исполнительного руководства (привет Ларри, Сергей, Эрик, Вик, привет-привет) и до самого нижнего уровня работников (привет тебе). Мы все не понимаем их.
Золотое правило платформ состоит в том, что ты ешь свою собственную собачью еду. Платформа Google+ - это жалкая запоздалая мысль. У нас вообще не было API при запуске, и, в последний раз, когда я проверял, у нас были только незначительные вызовы API.
Один из членов команды подошла ко мне и сообщила о запуске, и я спросил: «Так это преследовательское API?». Она нахмурилась и сказала «Да.» Конечно же, я шутил, но нет... единственные вызовы API, которые мы предлагаем, это чтобы скачать чей-то стрим. Так что, я думаю, шутка обо мне.
Microsoft знал о правиле «собачьей еды» по крайней мере 20 лет. Это стало частью их культуры уже для целого поколения. Ты не ешь человеческую еду и даешь своим разработчикам собачью еду.
Делая это, по сути, грабишь долгосрочную ценность платформы ради краткосрочного успеха. Платформы – они все о долгосрочном.
Google+ - это спонтанная реакция, исследование с краткосрочным мышлением, основанное на ошибочном представлении, что Facebook преуспел потому, что они сделали отличный продукт. Но они преуспели не поэтому.
Facebook успешен потому что они построили целую систему привлечения пользователей. В результате Facebook для каждого свой. Кто-то все время играет в "Войны Мафии".
Некоторые постоянно сидят в фермере. В Facebook есть сотни, а, может быть, и тысячи качественных способов убить время. Каждый найдет что-нибудь для себя.
Разработчики Google+ просто взглянули на рынок и подумали: "Черт, похоже нам не хватает пары-тройки игрушек. Давайте по-быстрому наймем кого-нибудь, кто нам их напишет.".
Теперь вы понимаете насколько это неправильно? Мы постоянно пытаемся предсказать, чего хотят пользователи и в этом наша проблема.
Эта задача невыполнима. Вы не сможете это сделать. Невозможно надежно предсказать чего хотят пользователи. За всю историю IT было всего несколько человек, которые могли надежно предугадывать желания пользователей. Стив Джобс был одним из них. И, простите, среди нас нет Стива Джобса.
Ларри Теслер мог сказать Безосу, что он не Стив Джобс, но Безос понял, что ему не нужно быть Стивом Джобсом для того чтобы исполнить желания каждого: любимый и привычный интерфейс, способ работы.
Безосу было достаточно дать возможность сторонним разработчикам и они сделали все за него.
Я извиняюсь перед теми для кого все что я говорю очевидно. Да, это до умопомрачения очевидно. Но мы все равно не можем этого понять. Мы не создаем Платформы и мы не понимаем Доступность.
На самом деле это одно и то же понятие. Платформа подразумевает доступность.
И да, Microsoft это понимает. И, вы знаете это так же хорошо, как и я, что это удивительно, потому что они вообще мало в чем понимают. Но они понимают платформы, как совершенно случайное следствие того, что начали заниматься бизнесом, предоставляющим платформы.
Итак у них более чем тридцатилетний опыт работы в этой области. Если вы зайдете на msdn.com и посерфите там немножко, и если Вы никогда этого не делали, готовьтесь удивиться. Потому что msdn потрясающе огромен.
Там тысячи тысячи и тысяч вызовов API. У них НЕОБЪЯТНАЯ платформа. Чересчур большая, потому что они не умеют проектировать компактно, но по крайней мере они ее делают.
Amazon это понимает. AWS просто великолепен. Вы просто посмотрите на него. Он действительно прекрасен. У нас нет ничего даже близко похожего.
Apple это понимает. Они создали нечто совершенно безальтернативное, особенно вокруг мобильной платформы. Но они понимают доступность и мощь сторонних разработчиков, и сами жрут свою собачью еду.
И знаете что? Их собачья еда хороша. Их API гораздо чище, чем у Microsoft, и был таким с незапамятных времен.
Facebook это понимает. Вот что по-настоящему меня беспокоит. Вот что вынудило мою ленивую задницу написать этот пост. А я ненавижу писать в блог.
Я ненавижу... плюсики, или как там это называется, когда ты выкладываешь огромный пост в Google+, даже если там ему не место, но ты все равно это делаешь, потому что желаешь успеха Google. Как и я!
Я имею ввиду, что лучше это делать в Facebook, и я бы с удовольствием свалил туда. Но ведь Гугл это дом, поэтому я настаиваю на этой семейной разборке, возможно не очень приятной.
После восхищения платформами, которые предлагает Microsoft и Amazon, и возможно Facebook (сам я не смотрел - не хочу расстраиваться), посмотрите на developers.google.com.
Огромная разница, не так ли? Это похоже на макет, который Ваш племянник, ученик пятого класса, выполнил в рамках домашней работы на тему "Насколько большую и мощную платформу может построить компания, если все ресурсы, которые у нее есть, - это один пятиклассник".
Пожалуйста, не поймите меня неправильно. Я знаю, с чем фактически пришлось сражаться команде разработчиков платформы, чтобы добиться хотя бы такой открытости. Они сражаются сколько я себя помню, потому что понимают платформы, и бьются насмерть, пытаясь создать ее в окружении, в лучшем случае безразличном к платформам, а в худшем - откровенно враждебном.
Я просто пытаюсь честно описать как developers.google.com выглядит со стороны. Он похож на детскую поделку. Где, черт возьми, здесь API для Google карт? Часть проектов там находится на стадии разработки.
И любое API, которое я просмотрел ... они все выглядели жалко. Совершенно очевидно, что это недоработанные проекты. Собачья еда. Недотягивает даже до неплохой органики. По сравнению с нашим внутренним API это все просто непонятный винегрет.
И снова не поймите неправильно то, что я говорю о Google+. Это не просто нарушители. Это вопрос культуры. То, что у нас происходит внутри - это война, в которой меньшинство Сторонников Платформ с переменным успехом сражается с Великими Самоуверенными Спонсируемыми Поклонниками Продуктов.
Любая команда, которая пошла по пути платформы, программируемой снаружи, это трудяги - сразу вспоминаются Google Docs и Google Maps, и я слышал, Gmail тоже щупает почву в этом направлении.
Но им тяжело выбить финансирование под это, поскольку это не часть нашей культуры. Инвестирование в Maestro просто мелочь по сравнению с колоссальными вливаниями в программируемую платформу Microsoft Office - это как пушистый зайчик против Годзиллы.
Команда Google Docs знает, что никогда не сможет тягаться с Office, пока они не выкатят возможность написания скриптов, но им не дают на это ресурсов. Точнее, я думаю, что не дают, ведь сейчас Apps Script работает только в электронных таблицах и даже не поддерживает горячих клавиш в составе своего API.
Мне кажется, эту команду определенно не любят.
По иронии судьбы, Google Wave, земля ему пухом, был отличной платформой. Но платформа не гарантирует мгновенного успеха.
В платформе должно быть убойное приложение. У Facebook оно есть. Предлагаемый набор сервисов со стенами, друзьями и тому подобным - вот убойное приложение Платформы Facebook.
И было бы серьезной ошибкой предположить, что приложения для Facebook имели бы хоть малую долю того успеха, что они имеют на платформе Facebook.
Не секрет, что люди считают Google высокомерным. Я работаю в Google, поэтому прекрасно понимаю, как это раздражает. Мы не высокомерны. По большому счету…
Можно даже сказать, что черта эта нам почти и не присуща. И — если напрячься и вспомнить начало этого поста — Google описывается там, как компания, "всё делающая верно".
Большинство же обвинений в наш адрес звучит от людей, которых мы либо не наняли, либо не согласных с нашей политикой, либо ещё каким-то иным образом нами обиженных.
Им просто удобно так думать.
Но когда мы становимся в позу и заявляем, что нам лучше знать, как создать идеальный продукт для всех и каждого (а это, поверьте мне, случалось уже неоднократно), вот тут-то мы и превращаемся в настоящих идиотов.
Вы можете объяснить это высокомерием, наивностью или ещё как угодно. Не важно. Как ни крути, всё это идиотизм. Идеальных продуктов — НЕ БЫВАЕТ.
Свежий пример: мы создали браузер. Браузер, в котором невозможно установить размер шрифта по умолчанию. И разговор здесь идет об ограничении доступности продукта.
Скажем, всю жизнь я страдал близорукостью. С таким диагнозом, когда вам стукнет 40, вы уже вряд ли сможете разглядеть предметы, стоящие даже вплотную к вам. И в такой ситуации возможность выбора шрифта превращается в вопрос жизни и смерти, который может полностью ограничить вам доступ к продукту.
Но команда Chrome пошла на поводу у собственного высокомерия, решив сделать всё по-своему: они стремятся создать продукт с минимумом настроек и с пеной у рта отстаивают свою позицию. И хрен они ложили на всех слепых, глухих и обделённых: жми Ctrl-+ на каждой странице до конца своей жизни.
Такие примеры встречаются повсеместно. Проблема в том, что мы Продуктовая Компания до мозга костей, мы производим Продукт. Один из них уже имел широкий успех (я говорю о Поиске), и этот успех лишает нас объективности.
Amazon тоже была продуктовой компанией, поэтому понадобилась экстренная сила, чтобы Безос понял, что нужна платформа.
Этой силой стали исчезающие границы; его загнали в угол и ему нужно было выбираться. Все, что у него было - это кучка инженеров и компьютеров... как бы их монетизировать... теперь понятно, как он допер до AWS.
Microsoft с самого начали были платформой, и они просто набили руку в этом.
Facebook: они беспокоят меня. Я не эксперт, но точно уверен, что они выпустили Продукт и давно добились успеха.
Я в точности не знаю, как Facebook умудрился стать платформой. Это было относительно давно, им нужно было быть платформой до того, как появились Mafia Wars и т.п.
Быть может, они смотрели на нас и думали: "Как нам обойти Google? В чем их слабость?"
Мы столкнулись с огромной проблемой, потому что нам нужно грандиозное изменение культуры, чтобы мы начали врубаться. Мы не делаем внутренние платформы, ориентированные на сервисы, но точно так же не делаем и внешние.
То есть, это самое "непонимание" распространено по всей компании: программные менеджеры не понимают, инженеры не понимают, команды разработчиков не понимают. Никто не понимает.
И даже если отдельные личности понимают, даже если ВЫ понимаете, это совершенно ничего не значит, пока мы не забьем всеобщую тревогу.
Мы не можем запускать продукты и рассчитывать, что впоследствии каким-то магическим образом превратим их в красивые расширяемые платформы. Мы пробовали и ничего не вышло.
Золотое Правило Платформ "Жрите свою собственную собачью еду" можно перефразировать так: "Запустите платформу и используйте ее для всего".
Вы не можете отложить это на потом. Легче все равно не будет. Спросите любого, кто работает над созданием платформы MS Office. Или над Amazon.
Чем дольше будете тормозить, тем сложнее будет в будущем делать платформу правильно. Схитрить не получится. Не должно быть секретной лазейки для особого приоритетного доступа из внутренних приложений. Без исключений. Иначе вы столкнетесь с очень серьезными проблемами впоследствии.
Я не говорю, что уже слишком поздно что-то менять. Но чем дольше мы ждем, тем ближе подходим к точке невозврата.
Я честно не знаю, как закончить этот пост. Я и так сказал гораздо больше, чем планировал.
Я писал этот пост шесть лет. Прошу меня простить, если я был чересчур резок или если навел тень на какой-либо продукт или личность, или если мы разрабатываем КУЧУ платформенных решений, но так случилось, что я и все, с кем я общался, просто не слышали об этом. Извините.
Но нам нужно начать делать платформы правильно.
Переведено на Нотабеноиде
http://notabenoid.org/book/22430/73812
Переводчики: vzhik, Rappahannock, DefaultLocale, blahblah
muhtar, oyefremov, dzr_gregory
Настройки
Готово:
