• Код высших достижений

      Почему мы любим спортивное программирование и почему Вам тоже стоит его полюбить.

      image

      Спортивное программирование объединяет турниры самого разного уровня — от школьных и студенческих олимпиад до финалов чемпионата мира. Крупнейшие международные компании организовывают свои контесты и выступают спонсорами авторитетных соревнований вроде ACM-ICPC. В нашей команде работают четыре чемпиона мира по программированию, и уже в четвёртый раз мы совместно с Codeforces проводим VK Cup — собственный турнир ВКонтакте.

      Читать дальше →
    • Дата-центр ВКонтакте

        Все знают, что сердце ВКонтакте — дом Зингера на Невском проспекте. Сегодня мы расскажем и покажем, где находится и как выглядит его мозг — дата-центр ИЦВА.

        image

        Читать дальше →
      • VK Streaming API Contest

          Привет! Мы запустили бета-тестирование нового продукта для получения публичных данных из ВКонтакте в реальном времени — Streaming API.



          Он призван заменить методы публичного API для поиска и парсинга данных (newsfeed.search, wall.search, wall.get) и стать более удобным решением задачи аналитики упоминаний в соцсети.

          Читать дальше →
          • +26
          • 7,9k
          • 7
        • Архитектура и алгоритмы индексации аудиозаписей ВКонтакте



            Расскажем о том, как устроен поиск похожих треков среди всех аудиозаписей ВКонтакте.

            Зачем всё это надо?


            У нас действительно много музыки. Много — это больше 400 миллионов треков, которые весят примерно 4 ПБ. Если загрузить всю музыку из ВКонтакте на 64 ГБ айфоны, и положить их друг на друга, получится башня выше Эйфелевой. Каждый день в эту стопку нужно добавлять еще 25 айфонов — или 150 тысяч новых аудиозаписей объёмом 1.5 ТБ.

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

            Если научиться достаточно точно находить одинаковые (или очень похожие) аудиозаписи, можно применять это с пользой, например:

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

            Читать дальше →
          • God mode ВКонтакте

              В ночь с 20 на 21 марта из-за ошибки в коде все пользователи ВКонтакте на четыре минуты получили служебные права. Мы закончили оценивать потери и отвечаем на злободневные вопросы.

              Что случилось?


              Случился фатально невнимательный merge ветки, в которой переделывали один из внутренних интерфейсов. В результате любой пользователь стал считаться сотрудником. В некоторых случаях — сотрудником со всеми существующими правами.
              Читать дальше →
            • ВКонтакте запускает третий чемпионат VK Cup

                Всем привет! Социальная сеть ВКонтакте возобновляет свой блог на Хабре.

                Первое, о чём хотим рассказать, – чемпионат по спортивному программированию VK Cup 2016 и разбор нескольких интересных задач с прошлого года.


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

                К участию в нём приглашаются команды из двух человек (можно участвовать и индивидуально), чей возраст от 14 до 23 лет. Отборочные этапы пройдут с марта по май, а в финал будут приглашены лучшие 20 команд. Финал пройдет в Санкт-Петербурге в июле, лучшие восемь команд будут награждены призами:

                1 место — 1048576 рублей
                2 местo — 524288 рублей
                3 местo — 262144 рубля
                4-8 места — 131072 рубля

                Соревнование будет проходить на площадке Codeforces, регистрация уже открыта — спешите зарегистрировать команду! Начать своё участие необходимо с квалификационных этапов, которые будут проходить 13-14 и 20-21 марта. Участвовать можно как в двух, так и в любом из них. Все подробности доступны по ссылке на странице Чемпионата.
                Подробности
                • +13
                • 19,8k
                • 8
              • Рассылка пуш уведомлений на Go


                  Если вы последний год пользовались мобильными приложениями от ВКонтакте (пусть даже не официальными), то этот материал раскроет немного данных по тому, как у нас это время работают пуш уведомления. Пушилка реализована на языке Go, и рассылает до 9 миллиардов пушей в сутки на четыре целевых платформы: GCM, APNS, MPNS, WNS.

                  В этом посте решил рассказать об общей архитектуре пушилки, проблемах и их обходе, нагрузках и производительности решения. Много букв и мало кода.
                  Читать дальше →
                • Релиз KPHP и движков

                    Довольно часто, выступая на различных конференциях, мы делились желанием выпустить под открытой лицензией KittenPHP, согласно традиции, заложенной крупными IT-компаниями, такими как Google и Facebook.

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

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


                    Читать дальше →
                  • Пиринговая сеть в видеоплеере

                      Часть пользователей уже могли заметить в нашем видеоплеере окно с предложением разрешить использование пиринговой сети. Просмотр роликов с использованием технологии peer-to-peer проходит последний этап тестирования. Из всех загружаемых на сайт роликов в тот или иной момент, как правило, просматриваются не более 10–15%. Еще 15–20% от этих роликов можно считать популярными. Переход на P2P существенно снижает нагрузку на сервера, предоставляя пользователям возможность принимать видеопоток также и с соседних клиентов (разумеется, так же подтвердивших участие в пиринговой сети).



                      Читать дальше →
                    Самое читаемое