на чем был написан вконтакте

ВКонтакте снова выкладывает KPHP

Привет! Сейчас будет дежавю.

Мы снова выложили на GitHub наш PHP-компилятор — KPHP. Он проделал большой путь, и чтобы рассказать о нём, сначала телепортируемся на шесть лет назад.

Поясню для тех, кто не в теме: платформа ВКонтакте изначально была написана на PHP. Со временем нас перестала устраивать производительность, и мы решили ускорить VK. Сделали компилятор — KPHP, который поддерживал узкое подмножество PHP. Это было давно, и с тех пор мы о нём не рассказывали, так как KPHP почти не развивался до 2018-го года.

Но два года назад мы взялись за него, чтобы вдохнуть в эту разработку новую жизнь. Что сделали и какой получили результат — расскажу в этой статье. Она будет не о громком релизе, который можно прямо сейчас внедрять в свои проекты, а о внутренней разработке ВКонтакте, которую мы показываем сообществу и продолжаем развивать. Представлюсь: меня зовут Александр Кирсанов, я руковожу командой Backend-оптимизаций.

А теперь — телепортация.

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

Из 2020-го в 2014-й

Идёт 2014 год, и ВКонтакте опенсорсит репозиторий kphp-kdb. Наверняка многие из вас помнят этот момент.

Там было много движков от VK, а также первая версия KPHP. Тогда многие заинтересовались и пошли смотреть, но… Но. На тот момент там не было подробной инструкции по сборке, а также документации и сравнения с аналогами. Не было канала связи с разработчиками и поддержкой. Дальнейших апдейтов на GitHub также не случилось. И всё равно некоторые энтузиасты пробовали пользоваться этими инструментами — возможно, кому-то даже удалось, но доподлинно не известно.

Что касается KPHP — на тот момент он поддерживал версию PHP… даже не знаю. Что-то среднее между 4 и 5. Были функции, примитивы, строки и массивы. Но не было классов и ООП, не было современных (на момент 2014-го) паттернов разработки. И весь бэкенд-код ВКонтакте был написан в процедурном стиле, на ассоциативных массивах.

В общем, инфоповод был интересным, но во что-то большее не развился.

Из 2014-го в 2020-й

Сейчас, в конце 2020 года, весь бэкенд-код ВКонтакте по-прежнему на PHP. Пара сотен разработчиков, миллионы строк.

Но наш нынешний PHP-код мало чем отличается от актуального в индустрии. Мы пишем на современном PHP: у нас есть классы, интерфейсы и наследование; есть лямбды, трейты и Composer; а ещё строгая типизация, анализ PHPDoc и интеграция с IDE. И KPHP делает всё это быстрым.

В 2014 году в техническую команду пришли новые люди, которые начали заниматься движками. (Да, ВКонтакте до сих пор десятки собственных закрытых движков, хотя точечно мы используем ClickHouse и другие известные.) Но KPHP долго никто не трогал. До 2018-го бэкенд-код действительно был на уровне PHP 4.5, а IDE плохо понимала код и почти не подсказывала при рефакторинге.

В середине 2018 года мы возродили работу над KPHP — и за пару сумасшедших лет не только подтянули его к современным стандартам, но и добавили фичи, которых нет и не может быть в PHP. Благодаря этому провели ряд ключевых оптимизаций бэкенда, и это позволило продуктовым командам интенсивно наращивать функциональность. Да, тем самым снова замедляя бэкенд.

И сейчас мы решились на второй дубль: готовы поделиться инструментами, которые помогают нам в работе. Какими именно и что о них стоит знать — расскажу далее.

Давайте про KPHP: что это и как работает

KPHP берёт PHP-код и превращает его в С++, а уже этот С++ потом компилирует.

Эта часть — техническая, она большая. Мы заглянем внутрь и увидим, что происходит с PHP-кодом: как из него получается С++ и что следует за этим. Не слишком кратко, чтобы обозначить базовые вещи, но и не чересчур детально — в дебри не полезем.

KPHP выводит типы переменных

Если бы KPHP пошёл по такому пути, он бы не смог стать быстрым. Залог скорости — прежде всего в типизации. KPHP заставляет думать о типах, даже когда вы их явно не указываете.

В PHP мы не пишем типы переменных (за исключением редких type hint для аргументов) — поэтому KPHP сам выводит типы. То есть придумывает, как бы объявить переменную в C++, чтобы это было лучше.

Давайте посмотрим сниппеты на примерах.

Тут KPHP понял, что $a — это целое число, то есть int64_t в C++, и сгенерил такой код.

И последний пример:

А здесь мы получим Compilation error. Потому что нельзя вызывать функции по имени — нельзя и всё. Нельзя обращаться по имени к переменным, к свойствам класса — KPHP напишет ошибку, несмотря на то что это работает в PHP.

KPHP хоть и выводит типы, но позволяет их контролировать

Выше мы видели: когда разработчик типы не пишет, они выводятся автоматом.
Но их можно писать — с помощью PHPDoc @var/@param/@return или через PHP 7 type hint. Тогда KPHP сначала всё выведет, а потом проверит.

KPHP превращает PHP class в C++ struct

Если в обычном PHP классы — это более-менее те же хеш-таблицы, то в KPHP не так. На выходе получаются обычные плюсовые структуры, которые ведут себя ссылочно, как и в PHP (очень похоже на std::shared_ptr идеологически).

Каждое поле получается своего типа. Обращение к полю — это обращение к типизированному свойству с известным на момент компиляции смещением в памяти. Это в десятки раз эффективнее, чем хеш-таблицы, — как по скорости, так и по памяти.

Наследование — плюсовое (за исключением late static binding, но оно разруливается на этапе компиляции). Интерфейсы — это тоже плюсовое множественное наследование, там главное — refcount запрятать куда нужно. Правда, методы классов — это отдельные функции, принимающие this явно, так оно логичнее с нескольких позиций.

В общем, когда разработчики пишут код, они всегда думают о типах и об их сходимости. Глупо ожидать, что напишешь фигню, а она заработает. Если ты следуешь ограничениям, получаешь скорость — иначе не бывает.

Как конкретно происходит конвертация PHP в C++

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

Многие знакомы с этой терминологией — те, кто занимался языками, или компиляторами, или статическим анализом.

Сначала PHP-файл превращается в линейный список токенов. Это такие минимальные неразрывные лексемы языка.

Потом линейный набор токенов превращается в синтаксическое дерево (abstract syntax tree). Оно согласовано с приоритетами операций и соответствует семантике языка. После этого этапа есть AST для всех достижимых функций.

Далее выстраивается control flow graph — это связывание функций и получение высокоуровневой информации о том, откуда и куда может доходить управление. Например, try/catch и if/else синтаксически похожи, но изнутри try можно добраться до внутренностей catch, а из if до тела else — нет. На выходе получается информация о соответствии вершин и переменных, какие из них используются на чтение, а какие на запись, и тому подобное.

Потом происходит type inferring. Это тот магический вывод типов, который ставит в соответствие всем PHP-переменным — переменные С++ с явно проставленными типами, а также определяет возвращаемые значения функций, поля классов и другое. Этот этап согласуется с тем, как код впоследствии будет исполняться на С++, какие там есть функции-хелперы, их перегрузки и прочее.

Имея типы, можно провести ряд оптимизаций времени компиляции. Например, заранее вынести константы, безопасно заинлайнить простые функции, а нетривиальные аргументы только для чтения передавать по const-ссылке, чтобы не вызывать конструктор копирования и не флапать рефкаунтер лишний раз.

И наконец, кодогенерация: все PHP-функции превращаются в С++ функции, а PHP-классы — в С++ структуры. Изменённые файлы и их зависимости перезаписываются, и код проекта на С++ готов.

Что дальше происходит с С++ кодом

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

Сгенерировать С++ из PHP — этого мало. Собственно говоря, это самое простое.

Во-вторых, PHP-сайт — это веб-сервер. Следовательно, и в KPHP должна быть вся серверная часть, чтобы можно было в том же nginx подменить PHP-шный upstream на KPHP-шный — и всё продолжало работать так же. KPHP поднимает свой веб-сервер, оркестрирует процессы, заполняет суперглобалы и переинициализирует состояние, как и PHP… Это тоже хардкорная часть — называется server, квадратик снизу.

Многие технические проблемы остаются за кадром — их не опишешь в статье на Хабре. Чего стоит один только сбор трейсов при ошибках: ведь в С++ не получить человекочитаемый стек, а хочется разработчику вообще его на PHP-код намаппить. Гигантское количество внутренних нюансов, множество подпорок и легаси — но в итоге продукт хорошо работает и развивается.

KPHP vs PHP: что мы не поддерживаем

Если код работает на PHP — это не значит, что он заработает на KPHP.
KPHP — это отдельный язык, со своими ограничениями и правилами.

KPHP vs PHP: в чём мы превосходим

В скорости. Если использовать KPHP грамотно, то код будет работать значительно быстрее, чем на PHP 7.4. А некоторых вещей нет в PHP — и чтобы при разработке он не падал с ошибками, там просто заглушки.

Итак, в чём наш профит:

Например, нам нужно загрузить пользователя и одновременно посчитать какую-то подпись запроса (CPU-работа — допустим, это долго). В обычном (синхронном) варианте это выглядит так:

Но эти действия независимы — пока грузится пользователь, можно считать хеш, а потом дождаться загрузки. В асинхронном варианте это происходит так:

В итоге: с одной стороны, мы следим за типами. С другой, можем делать запросы к движкам параллельно. С третьей, zero-cost abstractions (плохой термин, но пусть) — константы напрямую инлайнятся, всякие простые геттеры и сеттеры тоже, и оверхед от абстракций в разы меньше, чем в PHP.

Если говорить про бенчмарки, то на средних VK-страничках у нас профит от 3 до 10 раз. А на конкретных участках, где мы прицельно выжимали максимум, — до 20–50 раз.

Это значит, что PHP-код можно превратить в быстрый, если думать о типах и использовать built-in KPHP-функции.

KPHP и IDE

Система типов в KPHP значительно шире и строже, чем в PHP. Мы уже говорили, что нельзя смешивать в массиве числа и объекты — потому что какой тогда тип элементов этого массива?

Нельзя! А как можно? Например, сделать отдельный класс с двумя полями и вернуть его. Или вернуть кортеж (tuple) — специальный KPHP-тип.

К функции можно даже PHPDoc написать, KPHP его прочитает и после стрелочки (->) поймёт:

Но вот проблема: KPHP-то понимает, а вот IDE нет. Ведь tuple — это наша придумка, как и разные другие штуки внутри PHPDoc.

Не так давно у нас появился KPHPStorm — плагин для PhpStorm, который расширяет подсказки, оставляя рабочим рефакторинг. А ещё сам трекает сходимость типов значительно строже нативного.

Если вы интересуетесь разработкой плагинов для IDEA — загляните, все исходники открыты. KPHPStorm глубоко внедряется во внутренности IDE (через кучу недокументированного API). Многое пришлось пройти, чтобы всё заработало. Спасибо ребятам из JetBrains за помощь.

Закругляемся: вот он Open Source, что дальше?

Мы усовершенствовали KPHP и показываем его вам: можно посмотреть, покомпилировать что-то простое — теперь есть все инструкции и даже Docker-образ. Но будем честны: KPHP пока остаётся инструментом, заточенным под задачи VK, и для более широкого применения в реальных сторонних проектах он ещё не адаптирован.

Почему так? Мы всегда поддерживали в первую очередь собственные движки ВКонтакте. KPHP не умеет в Redis, MongoDB и другое. Даже Memcache у нас свой, который по RPC работает. Даже перед ClickHouse, который у нас развёрнут, стоит собственная proxy, куда мы тоже ходим по TL/RPC.

Мы никогда не поддерживали стандартные базы, потому что это не было нужно. Но знаете, в чём прикол? Если мы не выйдем в Open Source, этого никогда и не произойдёт — потому что это так и не потребуется. За последние два года KPHP прошёл огромный путь, возродился. Мы можем ещё пару лет продержать его у себя. Можем покрыть возможности PHP 8, сделать ещё ряд оптимизаций, освоить микросервисы и интеграцию с Kubernetes — но нам не будут нужны стандартные базы. И через два года будет то же самое.

Только открытость и внешняя заинтересованность помогут выделить дополнительные ресурсы, чтобы пилить фичи не только для нас, но и наружу. Может, уже среди читателей этой статьи найдутся те, кому интересно с нами развивать это направление? Почему нет — у нас очень маленькая команда, и мы занимаемся интересными, глубокими и совершенно не продуктовыми вещами.

Теперь вся разработка KPHP будет вестись на GitHub. Правда, CI пока останется в приватной инфраструктуре. Движки по-прежнему будут закрыты — но когда-нибудь команда движков, надеемся, тоже решится вынести в сообщество хотя бы часть кода.

У вас может возникнуть вопрос: а сложно ли добавить поддержку протоколов MySQL, Redis и других? И да и нет. Если пробовать интегрировать готовые модули — скорее всего, будет фейл. Особенно если они порождают дополнительные потоки, ведь воркеры принципиально однопоточные. К тому же, просто поддержать протокол, может, и не проблема — но сложно сделать его «прерываемым», чтобы это стыковалось с корутинами. А вот к этому сейчас код совершенно не готов: там корутины тесно переплетены с сетью и TL. Непростая история, в общем 🙂 Но выполнимая, и над этим надо работать.

Итак: где ссылки, как попробовать

Мы рассчитываем, что в дальнейшем нашей команде — возможно, при помощи сообщества — удастся развить KPHP так, чтобы он стал полезным инструментом и вне ВКонтакте. Не так важно, как быстро это произойдёт. В любом случае, это тот ориентир, который теперь стоит перед проектом.

Источник

На каком языке пишутся сложные сайты?

Здравствуйте, хотелось бы начать изучать языки для создания веб-сайтов, но не обычных, простеньких, а сложных, например: vk.com, imhonet, youtube. На каких языках подобные сайты пишутся? Что нужно вообще знать для написания подобных проектов?

P.S. Я понимаю, что сразу не напишу такие сайты и я готов тратить время на обучение, поэтому жду серьезных ответов.

Оценить 1 комментарий

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

Их не пишут, нельзя вот так вот взять и написать yotube.
Во первых не стоит называть такие проекты сайтами. Сайт это просто аккуратно оформленная страничка с данными доступная по протоколу http.
Т.е вордовский документ размещенный в сети интернет это и есть сайт.

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

на чем был написан вконтакте. Смотреть фото на чем был написан вконтакте. Смотреть картинку на чем был написан вконтакте. Картинка про на чем был написан вконтакте. Фото на чем был написан вконтакте

Давайте не будем столь категоричны. Известно что вк и фейсбук изначально небыли сложными, программно аппаратными комплексами. У них просто не было на все это денег.

Оба они начинались с самого банального PHP, несмотря на что этот язык всегда в «догоняющих», он остается самим популярным для сайтов и веб стартапов. Низкий уровень вхождения, рождает тучу фанатов, что рождает предложение и удовлетворяет спрос.

Далее, конечно для вк и фб было мало пхп, и начались переделки. Не скажу за сегодня, но последний раз когда слышал об этом.
— для фб написана собственная база данных на С(не вспомню каких именно), и по сути, вся нагрузка лежит на этой базе.
— для вк они разработали собственный язык программирования, FastPHP, где от php остались только названия функций. В тоже время, у них еще есть Jabber сервер, это то где все ваши сообщения, обновления стены и прочее, этот сервер написан на Node.js.

Как видите, «крутые» ресурсы, так или иначе используют легендарную сишку, для разработки собственных инструментов.

Можно также вспомнить и ноду, запущенную на вк, как видим она справляется, возможно она подходит для таких проектов, но это уже темы для целой статьи.

Источник

Как «ВКонтакте» стала главной соцсетью России — и почему перестала ей быть

Почему клон Facebook так выстрелил

10 октября 2006 года. Только что выпустившийся из университета филолог и программист-любитель Павел Дуров принимает поздравления с 22-м днём рождения — и в этот же день запускает сайт «ВКонтакте».

Как и сам Рунет, первое время это была платформа «не для всех» — сайт позиционировал себя в качестве закрытой соцсети студентов и выпускников российских вузов. Зарегистрироваться можно было лишь по приглашению и только под настоящим именем. Но уже через месяц доступ во «ВКонтакте» открыли всем желающим. Год спустя таких было уже 3 млн.

Сооснователь «ВКонтакте» Лев Левиев не скрывал, что идею соцсети подсмотрели у Facebook. «Мы ещё на втором курсе начали им пользоваться, в 2004 году. Предложили Паше сделать подобную штуку на базе его студенческого форума (Spbgu.ru — форум для студентов Санкт-Петербургского университета. — Прим. «Секрета»)», — говорит Левиев.

Сам Дуров тоже не отрицал, что «ВКонтакте» — это клон Facebоok, но со своей спецификой. Например, «чисто русской находкой» он называл идею поставить в качестве стартовой страницы не ленту новостей, а профиль пользователя и его стену — чтобы человек загружал больше личных данных и «лепил» идеального себя.

«Facebook подсказал не как надо делать, а как не надо», — объяснял Дуров.

Бывший разработчик «ВКонтакте» Андрей Мима (работал в компании в 2011 году) рассказал «Секрету», что первую версию российской соцсети создавали под вдохновением от Facebook, но код писали самостоятельно.

Обратные заимствования, кстати, тоже были. Facebook кое-что брал у «ВКонтакте», российские соцсети тоже заимствовали идеи и подходы. Случалось даже откровенное копирование, когда один из крупных российских конкурентов полностью списал у нас структуру и документацию API. Но это нормально, все сервисы эволюционируют, оглядываясь на то, как устроен мир вокруг.

Первую версию сайта, по словам Дурова, собрали за месяц. Разработку вели в спешке, потому что тогда уже были «Одноклассники», а также ещё несколько сайтов с той же концепцией — Moskva.ru, MoiFakultet.ru и другие. «Они забыты только потому, что «ВКонтакте» развивалась быстрее», — сказал Дуров.

Была даже такая шутка, что вы пришли домой, а Дуров всю мебель переставил — это было про скорость, с которой менялась «ВКонтакте».

Быстрый взлёт «ВКонтакте» произошёл в первую очередь благодаря перфекционизму команды по отношению к работе сервиса, подчёркивает Мима. «За редкими исключениями, в Рунете того времени всё было принято делать на коленке. Никто не заморачивался ускорением загрузки страницы на 20 миллисекунд, а для «ВКонтакте» это было важно. Плюс сайт постоянно попадал в потребности аудитории», — говорит экс-разработчик.

Чёткой пошаговой стратегии развития у «ВКонтакте» не было: команда не понимала, что будет разрабатывать через полгода, вспоминает Мима. «Со стороны это выглядело как хаос, но за этим хаосом — целая философия, которая и позволила выстроить такой продукт. Эта философия не масштабируется. Нужно быть Павлом Дуровым, чтобы это работало», — говорит Андрей.

И это работало: осенью 2007 года «ВКонтакте» по числу пользователей обошла «Яндекс»: у соцсети было 88 млн просмостров в сутки, а у главного российского поисковика — 85 млн.

Взрывной рост трафика «ВКонтакте» также обеспечили видеохостинг и аудиохостинг с собственными плеерами. На сайт можно было залить любую песню или видеоролик (в том числе порнографический) — совершенно без оглядки на авторские права. После этого у большинства пользователей отпала необходимость пользоваться пиратскими сайтами — треки или фильмы можно было не только найти в соцсети, но там же воспроизводить, составлять плей-листы и делиться ими с друзьями. Некоторым сайт ВК и вовсе заменил весь остальной Рунет.

Как «ВКонтакте» монетизировала тщеславие

На старте «ВКонтакте» отказалась от монетизации за счёт рекламы. Ставка была на то, чтобы сделать удобную для пользователей среду, куда бы они тащили всё новых и новых юзеров. Для этого нужно было сделать так, чтобы их ничего не раздражало — в том числе реклама.

«Люди — не идиоты. Они чувствуют — часто подсознательно — качество того, что вы предлагаете, — объяснял Дуров. — Каждая приятная мелочь и продуманная деталь, сколь бы несущественной она ни казалась, приносит новых преданных пользователей». Дурову удалось создать удобный и интуитивно понятный интерфейс — то, что выигрышно отличало ВК от Facebook и «Одноклассников».

Весной 2008 года «ВКонтакте» внедрила схему монетизации, основанную на тщеславии пользователей, — платное повышение рейтинга. Чем выше его значение — тем выше юзер оказывался в поисковой выдаче внутри соцсети.

Чтобы повысить рейтинг бесплатно, нужно было приглашать в ВК новых пользователей и подробно заполнять анкету. Бонусы к рейтингу мотивировали обитателей соцсети заниматься самопрезентацией — писать факты о себе, указывать любимые книги, фильмы и цитаты. Это работало на вовлечение пользователей: на страницах «ВКонтакте» они узнавали о своих друзьях и знакомых то, о чём даже не подумали бы спросить в реальной жизни.

Однако рейтинг не дал существенных денег, и Дуров придумал сервис «Подарки». Их покупали за внутреннюю валюту — «голоса», которые можно было оплачивать через мобильный счёт. Этот сервис принёс несколько миллионов долларов, но было ясно, что подарки служат временной подпоркой, писал Николай Кононов.

Вскоре рейтинг с сайта исчез. Те, кто платил за его «прокачку», почувствовали себя обманутыми.

Летом 2008 года в соцсети появились первые рекламные баннеры, а ещё через год — контекстная реклама. Также «ВКонтакте» получала комиссию от разработчиков встраиваемых в соцсеть игр. В 2009 году компания получила 470 млн рублей прибыли, в 2010 году — 560 млн. Это в разы меньше, чем генерировал основной конкурент, — «Одноклассники».

Руководство Mail.Ru Group, которая в 2011 владела 40% акций «ВКонтакте», упрекало команду в недостаточной монетизации. Позже это напряжение выльется в корпоративную войну, в которой Дуров оставит свой проект «треш-холдингу» (в 2011 году он выложил в twitter фотографию, на которой он показывает средний палец, с подписью: «Официальный ответ треш-холдингу Mail.ru на его очередные потуги поглотить “ВКонтакте”»).

Как правообладатели победили «ВКонтакте»

«Я скорее засуну голову себе в задницу, чем начну стричь пользователей, как овец, в сговоре с кучкой этих работорговцев (правообладателей. — Прим. «Секрета»)», — писал в 2012 году Павел Дуров о монетизации контента, размещённого в соцсети.

В 2010–2015 годах правительство США постоянно признавало «ВКонтакте» одним из крупнейших пиратских сайтов в мире. Соцсеть на тот момент стала самым полным и бесплатным архивом аудиозаписей, фильмов, сериалов и книг.

«Проблемы индустрии развлечений, которую интернет вынуждает пересматривать бизнес-модели, волнуют нас только в плане соблюдения законов, — рассказал Дуров Николаю Кононову. — Мы обязаны удалять видеоролики, если получаем письменное уведомление о ролике с документами, доказывающими авторские права на данный контент».

Дуров искренне ставил интересы пользователей выше, чем правообладателей, уверен работавший с ним Андрей Мима. «Очевидно что пойти на уступки правообладателям и политикам было бы проще, но музыка оставалась свободно доступной, а значит, уступок не было», — говорит он и вспоминает, как команде даже пришлось убрать музыкальный раздел из приложения для iOS после того, как «ВКонтакте» регулярно грозились выкинуть из App Store из-за жалоб правообладателей.

Из-за отсутствия в России музыкальных стриминговых платформ «ВКонтакте» в те годы заменила собой Spotify и Soundcloud.

Соцсеть стала главной площадкой для российской независимой музыки и дала старт карьерам Oxxxymiron, «Каспийского груза», «Грибов» и многих других. Показателем популярности артиста для профильных изданий впервые в истории стали не позиции в чартах или ротация по телевидению, а число репостов за сутки после публикации альбома.

Творчество независимых музыкантов — лишь малая часть музыкальной библиотеки «ВКонтакте». Большую её часть составляли нелегальные записи. Российские правообладатели и представители зарубежных компаний считали, что «ВКонтакте» лишает их артистов заработка. Некоторые шли в суд. Чтобы урегулировать споры (в тот момент команда ВК планировала выход на IPO, и претензии от правообладателей могли бы этому помешать), в 2013 году соцсеть начала удалять треки.

Пользователи пошли на хитрость: стали шифровать названия исполнителей и песен. Так Лана Дель Рей стала «Ванна без дверей», а Foals — «Жеребцами». Это не помогло: вскоре администрация начала удалять треки на основе звукового оттиска (по нему же работает популярное приложение распознавания мелодий Shazam).

То, чему противился Дуров, спустя пять лет всё же произошло: в апреле 2017 года во «ВКонтакте» ввели платную подписку (за 149 рублей в месяц). Чтобы стимулировать пользователей платить, между треками стали пускать рекламу, а вскоре ограничили возможность бесплатно слушать музыку в фоновом режиме до 30 минут в сутки. Так соцсеть из бесплатного музыкального архива окончательно трансформировалась в стриминговый сервис.

Борьба с пиратством во «ВКонтакте» развернулась и в других сегментах. Например, книгоиздатели договорились с соцсетью о премодерации загружаемых книг, а на просьбы правообладателей удалить копии фильмов или сериалов «ВКонтакте» реагирует так быстро, что обладатели авторских прав перестали считать соцсеть главной пиратской платформой страны и теперь больше борются с «Яндексом».

Как соцсетью заинтересовались органы

В графе «Политические предпочтения» анкеты во «ВКонтакте» Павел Дуров указал: «либертарианские». Либертарианцы считают главной ценностью свободу личности, в том числе политическую.

«Скоро, очень скоро государства рухнут, и на их место придут конкурентоспособные компании, в том числе охраняющие граждан, — цитирует Дурова Кононов. — Наше дело — приближать этот момент, погружая всё большее количество социальных транзакций в Сеть, где все процессы текут прозрачнее, чем по бумажным процедурам».

Дуров считал свободу распространения информации органической чертой интернета. Поэтому он создавал «ВКонтакте» как пространство свободы для пользователей. И это нравилось не всем.

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

В 2010 году «ВКонтакте» увеличила с десятка до нескольких сотен человек штат модераторов. В их обязанности входили удаление жестокого или откровенного контента, а также блокировка призывов к насилию, межнациональной и религиозной розни.

Тогда же за «чистоту Рунета» стали бороться общественники — казаки, медиагвардейцы, православные IT-специалисты и «киберхранители».

Дурова тут же записали в сторонники политической оппозиции. Сам он своё «стремительное превращение из «пирата» и «порнокороля» в защитника свобод прокомментировал в письме изданию Lenta.ru. Он заявил, что не поддерживает демократию, но выступает против цензуры в Рунете.

Позже «Новая газета» опубликовала копию другого письма, которое Павел якобы отправил в Администрацию Президента. Автор послания признавался в симпатии первому замглавы Администрации Президента Владиславу Суркову и объяснял, что, если «ВКонтакте» будет зачищать аккаунты и группы оппозиционеров, они уйдут в зарубежный Facebook. Это лишит властей возможности анализировать протестные настроения и ударит по позициям самой «ВКонтакте». Пресс-служба соцсети опровергла подлинность письма, но автор «Новой газеты» Андрей Колесников утверждал, что редакция получила документ «из надёжного источника во власти».

Пользователи «ВКонтакте» ощутили ужесточение контроля сильнее пользователей других платформ.

Когда власти получили контроль над «ВКонтакте»

Весной 2013 года Левиев и Мирилашвили неожиданно продали свои 48% «ВКонтакте» фонду United Capital Partners (UCP) Ильи Щербовича. В Щербовиче видели агента Кремля, так как он входил в советы директоров государственных «Роснефти», «Транснефти» и «Федеральной сетевой компании». Сам Дуров считает, что сделку курировал лично президент «Роснефти» Игорь Сечин.

Когда в 2014 году власти начали масштабную кампанию в русскоязычном пространстве, продвигая собственную версию украинских событий в Крыму и в Донбассе, им стало ясно: контроль над «ВКонтакте» придётся ужесточать.

Год начался с того, что Дуров на фоне конфликта с другими акционерами (главным оппонентом был холдинг Mail.ru Group) продал свою 12-процентную долю гендиректору «Мегафона» Ивану Таврину (Mail.ru сразу выкупил её). Создатель соцсети объяснил этот шаг так: «То, чем вы владеете, рано или поздно начинает владеть вами». При этом добавил, что с поста гендиректора уходить не собирается.

1 апреля он неожиданно объявил об уходе с поста гендиректора, но спустя два дня сообщил, что пошутил.

Через две недели повторилась история с публикацией запроса от силовиков. «Прокуратура потребовала от меня закрыть антикоррупционную группу Алексея Навального под угрозой блокировки «ВКонтакте». Но я не закрыл эту группу в декабре 2011 года и, разумеется, не закрыл сейчас», — написал Дуров.

Спустя 5 дней его уволили. Сам он узнал об этом только через неделю. Гендиректором компании стал Борис Добродеев, сын главы государственного телехолдинга ВГТРК.

основатель и владелец паблика MDK

Когда «ВКонтакте» осталась без Дурова, он потерял большую часть своей автономности. Это было заметно. Прежде тому, кто хотел удалить какой-то контент, надо было реально заморочиться: на связь между Mail.ru Group, командой «ВКонтакте» и юристами могли уйти месяцы. Сейчас же противоправный контент удаляется в течение часа.

Из книги журналистов Андрея Солдатова и Ирины Бороган «Битва за Рунет: как власть манипулирует информацией и следит за каждым из нас»:

«Кремль поверил, что получил полный контроль над «ВКонтакте» — и компанией, и сетью, — и не ждал сюрпризов, упустив лишь одну деталь: соцсеть — не телеканал и не газета. Если в традиционных СМИ контент создаётся репортёрами, работающими в редакции, то в социальной сети его создают пользователи, рассеянные по стране и мало интересующиеся тем, кто владеет и управляет этой сетью».

Без последствия для юзеров это оставаться не могло.

За что пользователи «ВКонтакте» лишались свободы

Утром 8 мая 2018 года к 23-летней жительнице Барнаула Марии Мотузной пришли полицейские. Оперативник включил свой компьютер и открыл файл со скринами картинок из альбома старой страницы Мотузной во «ВКонтакте».

Процесс вызвал резонанс: СМИ стали рассказывать о десятках похожих историй (людей судили за фото даже в закрытых альбомах, сохранённые 5–10 лет назад), а пользователи массово бросились чистить свои аккаунты.

В подавляющем большинстве дел речь шла о публикациях во «ВКонтакте».

По данным информационно-аналитического центра «Сова», за посты и репосты к уголовной ответственности привлекли пользователей.

Правозащитники говорили, что «ВКонтакте», в отличие от Facebook или Twitter, по первому требованию делится с властями любой информацией о пользователях. В том числе личной перепиской.

«Российским правоохранителям легче получить данные о пользователе у российского сервиса, нежели у европейского или американского, — подтвердила «Секрету фирмы» юрист “Роскомсвободы” Екатерина Абашина. — Находясь на территории России, компания не может уклониться от действующей регуляторики».

«Нас всех так бомбит с историй про уголовные дела за репост, в том числе потому что это для каждого личная история, — писала в разгар процесса над Мотузной журналист «Ведомостей» Алёна Сухаревская. — Это 90 млн человек, которые ходят под угрозой уголовного преследования. В стране, где уже нельзя выходить на улицу для выражения своего мнения, где почти не осталось СМИ, не купленных государством. Где личное пространство, не подконтрольное государству, сжимается до окошка мобильного экрана и интернета. Но и туда за нами пришли».

Дело Марии в итоге закрыли. Она даже отсудила у государства 100 000 рублей морального ущерба. Частичная декриминализация экстремистской статьи привела к тому, что число дел за мемы резко сократилось. Но позже на смену пришла новая статья — о проявлении неуважения к власти в интернете.

Как «ВКонтакте» трансформируется

К 2020 году «ВКонтакте» перестал быть местом, где люди находят друзей и держат с ними связь. «Теперь это не про комьюнити, а про потребление контента и сервисов типа музыки», — сказал «Секрету» Роберто Панчвидзе.

Он отмечает и другую тенденцию: ВК перестаёт быть молодёжным сайтом. «По нашему паблику это видно (у MDK более 11,5 млн подписчиков — это шестой по этому показателю паблик в ВК. — Прим. “Секрета»). Ядро аудитории раньше составляли люди 18–24 лет, а теперь — 24–30. Кто был — остался, а молодых не пришло. Они мигрировали в другие соцсети и мессенджеры», — рассказывает Панчвидзе.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *