Твиттер процветает за счет репостов не только в рамках платформы социальных сетей, но и благодаря партнерским ссылкам по всему Интернету. За исключением понедельника, большинство этих ссылок перестали работать.
В течение примерно часа любой, кто пытался поделиться недавно опубликованными статьями в Твиттере, встречал сообщение об ошибке, явно предназначенное для разработчиков:
Это было похоже на то, как если бы Twitter информировал издателей о том, что они не оплатили счет за воду и поэтому не могут публиковать ссылки в социальной сети.
Что пошло не так?
Нам не пришлось долго ждать объяснений генерального директора Twitter Илона Маска. В ответ на твит бывшего основателя Netscape и известного венчурного капиталиста Марка Андриссена, указывающего на то, что четыре из пяти главных трендов в Твиттере связаны с Твиттером, Маск написал в Твиттере: «Небольшое изменение API имело огромные последствия. Стек кода чрезвычайно хрупок для нет веской причины. В конечном итоге потребуется полная переработка ».
Небольшое изменение API имело огромные последствия. Стек кода чрезвычайно хрупок без уважительной причины. В конечном итоге потребуется полная переработка.6 марта 2023 г.
Однако этот, казалось бы, трезвый твит должен вызывать тревогу. Маск утверждает, что стек кода (по сути, массивный стек программ, которые работают вместе, чтобы создать единое целое в Твиттере) хрупок и нуждается в переписывании. Чего он не упомянул, так это того, что среди тысяч твиттеров сотрудников, которых он уволил с ноябрямногие из них были инженерами, и можно с уверенностью предположить, что некоторые из них занимались так называемым QA или гарантией качества.
Как правило, если вы планируете внести какие-либо изменения в код веб-сайта, онлайн-сервиса или приложения, QA тестирует их на автономной копии платформы. Таким образом они гарантируют, что обновления, какими бы маленькими они ни были, не окажут неблагоприятного воздействия на рабочую среду.
Эта концепция известна как «производство», работающий сайт или служба, в отличие от «постановки», среды, идентичной реальной, но недоступной для просмотра или прикосновения к пользователям. Вы запускаете свой новый код или функцию через промежуточную стадию, группа QA-тестеров применяет набор известных сценариев (возможно, они добавляют крайний случай или два), и пока нет красных флажков, обновление переносится из промежуточной стадии в производственную. .
Twitter, общая надежность которого упала (от перехода в автономный режим до неожиданного появления и исчезновения функций) с тех пор, как Маск пришел к власти, может получать обновления по-другому.
Мускус любит тестировать функции на производстве (откроется в новой вкладке) (живой сайт). В результате он продолжает сталкиваться с непредвиденными последствиями.
Существуют некоторые разногласия по поводу того, существует ли группа контроля качества Twitter.
Некоторые утверждают, что он существует, но Маск становится нетерпеливым и запускает непроверенный код в жизнь.
Другие настаивают на том, что Илон Маск пришел в Twitter и обнаружил, что у Twitter нет команды QA, и что он уже давно практикует запуск непроверенного кода. Хотя это кажется крайне маловероятным.
Я спросил Маска прямо в Твиттере. если обновление API тестировалось на стейджинге перед тем, как его отправят в прямом эфире, и обновит этот пост, если он ответит.
Никогда не предполагайте
Предположение, которое он сделал здесь, о том, что небольшое изменение API мало повлияет на сайт, было неверным. И, тем не менее, Маск до сих пор не понимает, что делает это неправильно.
Тестирование функций любого рода на реальной версии такой сложной платформы, как Twitter, неизбежно приведет к ошибкам и сбоям.
Решит ли все это переписывание стека кода? Возможно, но очень немногие платформы остаются такими же чистыми, какими они были при запуске, и даже если переписывание будет надежным и совершенным, частые обновления и новые функции проверят эту стабильность.
Пока Маск отказывается полностью тестировать то, что он запускает, прежде чем запускать его, нет сценария, в котором Twitter избежал бы регулярных простоев.
Это простое решение, Илон, сделайте контроль качества неотъемлемой частью конвейера разработки и избавьте себя и нас от головной боли. Или продолжайте делать по-своему, потому что это так хорошо работает.