...

суббота, 19 октября 2019 г.

[Из песочницы] Принцип открытости-закрытости

Привет, Хабр! Перед вами перевод статьи Роберта Мартина Open-Closed Principle, которую он опубликовал в январе 1996 года. Статья, мягко говоря, не самая свежая. Но в рунете статьи дяди Боба про SOLID пересказывают только в урезанном виде, поэтому я подумал, что полный перевод лишним не будет.


⌘ ⌘ ⌘

Я решил начать с буквы O, так как принцип открытости-закрытости, по сути, является центральным. Среди прочего тут есть много важных тонкостей, на которые стоит обратить внимание:


  • Ни одну программу нельзя «закрыть» на 100%.
  • Объектно-ориентированное программирование (ООП) оперирует не физическими объектами реального мира, а понятиями — например, понятием «упорядочивание».

Это первая статья в моей колонке Заметки Инженера для The C++ Report. Статьи, публикуемые в этой колонке, будут фокусироваться на использовании C++ и ООП и затрагивать сложности в разработке ПО. Я постараюсь сделать так, чтобы материалы были прагматичны и полезны для практикующих инженеров. Для документации объектно-ориентированного дизайна в этих статьях я буду использовать нотацию Буча.

С объектно-ориентированным программированием связано много эвристик. Например, «все переменные-члены (member variables) должны быть закрытыми (private)», или «следует избегать глобальных переменных», или «определение типов во время исполнения опасно». В чем причина таких эвристик? Почему они правдивы? Всегда ли они правдивы? В этой колонке исследуется принцип проектирования, лежащий в основе этих эвристик, — принцип открытости-закрытости.
Ивар Якобсон сказал: «Все системы изменяются в процессе жизненного цикла. Это нужно иметь в виду при проектировании системы, у которой ожидается больше одной версии». Как же мы можем спроектировать систему, чтобы она была устойчива перед лицом изменений и у которой ожидается больше чем одна версия? Бертран Мейер рассказал нам об этом еще в далеком 1988 году, когда сформулирован знаменитый ныне принцип открытости-закрытости:

Програмные сущности (классы, модули, функции и т.д.) должны быть открыты для расширения и закрыты для изменений.

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

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

Модули, отвечающие принципу открытости-закрытости, имеют два главных признака:


  1. Открыты для расширения. Это означает, что поведение модуля может быть расширено. То есть мы можем добавить модулю новое поведение в соответствии с изменившимися требованиями к приложению или для удовлетворения нужд новых приложений.
  2. Закрыты для изменений. Исходный код такого модуля неприкасаем. Никто не вправе вносить в него изменения.

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

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

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

На схеме ниже представлен простой вариант проектирования, который не отвечает принципу открытости-закрытости. Оба класса, Client и Server, не абстрактны. Нет гарантий, что функции — члены класса Server виртуальны. Класс Client использует класс Server. Если мы захотим, чтобы объект класса Client использовал другой объект сервера, то мы должны изменить класс Client, чтобы он ссылался на новый класс сервера.

image
Закрытый клиент

А на следующей схеме представлен соответствующий вариант проектирования, который отвечает принципу открытости-закрытости. В этом случае класс AbstractServer — это абстрактный класс, все функции-члены которого виртуальные. Класс Client использует абстракцию. Однако объекты класса Client будут использовать объекты класса-наследника Server. Если мы захотим, чтобы объекты класса Client использовали другой класс сервера, то мы введем нового наследника класса AbstractServer. Класс Client при этом останется без изменений.

image
Открытый клиент

Рассмотрим приложение, которое должно рисовать круги и квадраты в стандартном GUI. Круги и квадраты должны быть нарисованы в определенном порядке. В соответствующем порядке будет составлен список кругов и квадратов, программа должна пройтись в этом порядке по списку и нарисовать каждый круг или квадрат.

На C, используя техники процедурного программирования, не отвечающие принципу открытости-закрытости, мы могли бы решить эту задачу как показано на листинге 1. Здесь мы видим множество структур данных с одним и тем же первым элементом. Этот элемент — код типа, который идентифицирует структуру данных как круг или квадрат. Функция DrawAllShapes проходит по массиву указателей на эти структуры данных, узнавая код типа и затем вызывая соответствующую функцию (DrawCircleили DrawSquare).

//Листинг 1
//Решение проблемы Квадрат/Круг в процедурном стиле

enum ShapeType {circle, square}

struct Shape
{
    ShapeType itsType;
};
struct Circle
{
    ShapeType itsType;
    double itsRadius;
    Point itsCenter;
};

struct Square
{
    ShapeType itsType;
    double itsSide;
    Point itsTopLeft;
};
//
// реализованы в другом месте
//
void DrawSquare(struct Square*)
void DrawCircle(struct Circle*);
typedef struct Shape *ShapePointer;
void DrawAllShapes(ShapePointer list[], int n)
{
    int i;
    for (i=0; i<n; i++)
    {
        struct Shape* s = list[i];
        switch (s->itsType)
        {
            case square:
            DrawSquare((struct Square*)s);
            break;
            case circle:
            DrawCircle((struct Circle*)s);
            break;
        }
    }
}

Функция DrawAllShapes не отвечает принципу открытости-закрытости, потому что она не может быть «закрыта» от новых типов фигур. Если бы я захотел расширить эту функцию возможностью рисовать фигуры из списка, включающего треугольники, то мне потребовалось бы изменить функцию. Фактически я должен изменять функцию для каждого нового типа фигуры, который мне нужно рисовать.

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

В листинге 2 я покажу код, который демонстрирует решение задачи квадрат/круг, отвечающее принципу открытости-закрытости. Вводится абстрактный класс Shape. Этот абстрактный класс содержит одну чистую виртуальную функцию Draw. Классы Circle и Square являются наследниками класса Shape.

//Листинг 2
//Решение проблемы Квадрат/Круг в ООП-стиле

class Shape
{
public:
    virtual void Draw() const = 0;
};
class Square : public Shape
{
public:
    virtual void Draw() const;
};
class Circle : public Shape
{
public:
    virtual void Draw() const;
};
void DrawAllShapes(Set<Shape*>& list)
{
    for (Iterator<Shape*>i(list); i; i++)
        (*i)->Draw();
}

Заметьте: если мы захотим расширить поведение функции DrawAllShapes в листинге 2, чтобы рисовать новый вид фигур, то все, что нам нужно сделать, это добавить нового наследника класса Shape. Не нужно изменять функцию DrawAllShapes. Поэтому DrawAllShapes отвечает принципу открытости-закрытости. Ее поведение может быть расширено без изменений самой функции.

В реальном мире класс Shape содержал бы много других методов. И все же добавить новую фигуру в приложение все еще очень просто, так как все, что нужно сделать, — это ввести нового наследника и реализовать эти функции. Не нужно рыскать по всему приложению в поисках мест, требующих изменений.

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

Очевидно, что ни одна программа не может быть на 100% закрыта. Например, что произойдет с функцией DrawAllShapes из листинга 2, если мы решим, что сначала должны быть нарисованы круги, а затем квадраты? Функция DrawAllShapes не закрыта от такого рода изменений. В целом не важно, насколько «закрыт» модуль, всегда есть какой-то тип изменений, от которого он не закрыт.

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


Использование абстракции для доcтижения дополнительной закрытости

Как мы можем закрыть функцию DrawAllShapes от изменений в порядке рисования? Помним, что закрытие базируется на абстракции. Поэтому, чтобы закрыть DrawAllShapes от упорядочивания, нам нужна некая «абстракция упорядочивания». Частный случай упорядочивания, представленный выше, — это рисование фигур одного типа перед фигурами другого типа.

Политика упорядочивания подразумевает, что, располагая двумя объектами, можно определить, какой из них должен быть нарисован первым. Поэтому мы можем определить метод для класса Shape под названием Precedes, который принимает другой объект класса Shape в качестве аргумента и возвращает в качестве результата булевое значение true, если объект класса Shape, получивший это сообщение, нужно при сортировке расположить до объекта класса Shape, который был передан в качестве аргумента.

В C++ эта функция может быть представлена как перегрузка оператора «<». В листинге 3 приведен класс Shape с методами сортировки.

Теперь, когда у нас есть способ определения порядка следования объектов класса Shape, мы можем отсортировать их, а затем нарисовать. В листинге 4 приведен соответствующий код на C++. В нем используются классы Set, OrderedSet и Iterator из категории Components, разработанной в моей книге (Designing Object Oriented C++ Applications using the Booch Method, Robert C. Martin, Prentice Hall, 1995).

Итак, мы реализовали упорядочивание объектов класса Shape и рисование их в соответствующем порядке. Но у нас все еще нет реализации абстракции упорядочивания. Очевидно, что каждый объект класса Shape должен переопределять метод Precedes для определения порядка. Как это может работать? Какой код необходимо написать в Circle::Precedes, чтобы круги рисовались до квадратов? Обратите внимание на листинг 5.

//Листинг 3
//Абстрактный класс Shape с методами для упорядочивания.

class Shape
{
public:
    virtual void Draw() const = 0;
    virtual bool Precedes(const Shape&) const = 0;
    bool operator<(const Shape& s) {return Precedes(s);}
};
//Листинг 4
//метод DrawAllShapes с упорядочиванием

void DrawAllShapes(Set<Shape*>& list)
{
    // копировать элементы в OrderedSet и отсортировать.
    OrderedSet<Shape*> orderedList = list;
    orderedList.Sort();
    for (Iterator<Shape*> i(orderedList); i; i++)
        (*i)->Draw();
}
//Листинг 5
//Определение порядка для круга

bool Circle::Precedes(const Shape& s) const
{
    if (dynamic_cast<Square*>(s))
        return true;
    else
        return false;
}

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


Использование Data Driven подхода для достижения закрытости

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

Применив этот подход, мы успешно закрыли функцию DrawAllShapes от изменений, связанных с упорядочиванием, и каждого наследника класса Shape — от введения нового наследника или от изменения в политике упорядочивания объектов класса Shape в зависимости от их типа (например, такого, что объекты класса Squares должны рисоваться первыми).

//Листинг 6
//Механизм упорядочивания использующий табличный подход

#include <typeinfo.h>
#include <string.h>
enum {false, true};
typedef int bool;
class Shape
{
public:
    virtual void Draw() const = 0;
    virtual bool Precedes(const Shape&) const;
    bool operator<(const Shape& s) const
    {return Precedes(s);}
private:
    static char* typeOrderTable[];
};
char* Shape::typeOrderTable[] =
{
    "Circle",
    "Square",
    0
};
// Функция ищет имена классов в таблице.
// Таблица определяет последовательность, в которой должны
// рисоваться фигуры. Фигуры, которых в таблице нет,
// всегда рисуются в первую очередь
bool Shape::Precedes(const Shape& s) const
{
    const char* thisType = typeid(*this).name();
    const char* argType = typeid(s).name();
    bool done = false;
    int thisOrd = -1;
    int argOrd = -1;
    for (int i=0; !done; i++)
    {
        const char* tableEntry = typeOrderTable[i];
        if (tableEntry != 0)
        {
            if (strcmp(tableEntry, thisType) == 0)
                thisOrd = i;
            if (strcmp(tableEntry, argType) == 0)
                argOrd = i;
            if ((argOrd > 0) && (thisOrd > 0))
                done = true;
        }
        else // table entry == 0
            done = true;
    }
    return thisOrd < argOrd;
}

Единственный элемент, который не закрыт от изменения порядка рисования фигур, — это таблица. Таблица может быть помещена в отдельный модуль, отделенный от всех остальных модулей, и поэтому ее изменения не затронут другие модули.


Дальнейшее закрытие

Это не конец истории. Мы закрыли иерархию класса Shape и функцию DrawAllShapes от изменения политики упорядочивания, базирующейся на типе фигур. Однако наследники класса Shape не закрыты от политик упорядочивания, которые не связаны с типами фигур. Похоже, нам нужно упорядочить рисование фигур в соответствии со структурой более высокого уровня. Полное исследование подобных проблем выходит за рамки данной статьи; однако интересующийся читатель может подумать, как решить эту проблему, используя абстрактный класс OrderedObject, содержащийся в классе OrderedShape, который наследуется от классов Shape и OrderedObject.

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


Делайте все переменные-члены приватными

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

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

Но что если у вас есть переменная, насчет которой вы уверены, что она никогда не изменится? Имеет ли смысл делать ее private? Например, в листинге 7 приводится класс Device, содержащий переменную — член bool status. В ней хранится статус последней операции. Если операция была успешна, то значение переменной status будет true, в противном случае — false.

//Листинг 7
//неконстантная публичная переменная

class Device
{
public:
    bool status;
};

Мы знаем, что тип или смысл этой переменной никогда не изменится. Так почему бы не сделать ее public и не дать клиенту прямой доступ к ней? Если переменная действительно никогда не изменится, если все клиенты соблюдают правила и лишь читают из этой переменной, тогда нет ничего страшного в том, что переменная публична. Однако подумайте, что случится, если один из клиентов воспользуется возможностью писать в эту переменную и изменит ее значение.

Неожиданно этот клиент может повлиять на работу любого другого клиента класса Device. Это значит, что невозможно закрыть клиентов класса Device от изменений этого некорректного модуля. Это слишком большой риск.

С другой стороны, предположим, что у нас есть класс Time, приведенный в листинге 8. В чем опасность публичности переменных — членов этого класса? Очень маловероятно, что они изменятся. Более того, не важно, изменяют клиентские модули значения этих переменных или нет, так как изменение этих переменных предполагается. Также очень маловероятно, что наследуемые классы могут зависеть от значения конкретной переменной-члена. Так есть ли проблема?

//Листинг 8

class Time
{
public:
    int hours, minutes, seconds;
    Time& operator-=(int seconds);
    Time& operator+=(int seconds);
    bool operator< (const Time&);
    bool operator> (const Time&);
    bool operator==(const Time&);
    bool operator!=(const Time&);
};

Единственная претензия, которую я мог бы предъявить коду из листинга 8, — это то, что изменение времени не атомарно. То есть клиент может изменить значение переменной minutes без изменения значения переменной hours. Это может привести к тому, что объект класса Time может содержать несогласованные данные. Я бы предпочел ввести единственную функцию для установки времени, которая принимала бы три аргумента, что делало бы установку времени атомарной операцией. Но это слабый аргумент.

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

Поэтому в таких редких случаях, когда принцип открытости-закрытости не нарушается, запрет public — и protected-переменных зависит больше от стиля, а не от содержания.


Никаких глобальных переменных… вообще!

Аргумент против глобальных переменных тот же, что и аргумент против публичных переменных-членов. Ни один модуль, который зависит от глобальной переменной, не может быть закрыт от модуля, который может писать в нее. Любой модуль, который использует эту переменную способом, не предполагаемым другими модулями, сломает эти модули. Это слишком рискованно — иметь множество модулей, зависящих от капризов какого-то одного зловредного модуля.
С другой стороны, в тех случаях, когда глобальные переменные имеют небольшое количество зависимых от них модулей или не могут быть использованы неправильным образом, они не причиняют вреда. Проектировщик должен оценить, сколько закрытости приноситься в жертву и определить, стоит ли того удобство, предоставляемое глобальной переменной.

Тут опять же вступают в игру проблемы стиля. Альтернативы использованию глобальных переменных обычно недороги. В таких случаях использование техники, которая привносит хоть и небольшой, но риск для закрытости вместо техники, которая такой риск полностью исключает, — это признак плохого стиля. Однако иногда использование глобальных переменных по-настоящему удобно. Типичный пример — глобальные переменные cout и cin. В таких случаях, если принцип открытости-закрытости не нарушается, можно пожертвовать стилем ради удобства.


RTTI — это опасно

Еще один распространенный запрет — использование dynamic_cast. Очень часто dynamic_cast или другою форму определения типа во время выполнения (RTTI) обвиняют в том, что это крайне опасная техника, а потому ее следует избегать. При этом часто приводят пример из листинга 9, который очевидно нарушает принцип открытости-закрытости. Однако в листинге 10 приведен пример аналогичной программы, которая использует dynamic_cast, не нарушая при этом принцип открытости-закрытости.

Разница между ними в том, что в первом случае, приведенном в листинге 9, код нужно менять каждый раз, когда появляется новый наследник класса Shape (не говоря уже о том, что это абсолютно нелепое решение). Однако в листинге 10 в этом случае никаких изменений не требуется. Поэтому код из листинга 10 не нарушает принцип открытости-закрытости.
Правилом большого пальца в данном случае можно считать то, что RTTI можно использовать, если принцип открытости-закрытости не нарушается.

//Листинг 9
//RTTI, нарушающее принцип открытости-закрытости.

class Shape {};
class Square : public Shape
{
private:
    Point itsTopLeft;
    double itsSide;
    friend DrawSquare(Square*);
};
class Circle : public Shape
{
private:
    Point itsCenter;
    double itsRadius;
    friend DrawCircle(Circle*);
};
void DrawAllShapes(Set<Shape*>& ss)
{
    for (Iterator<Shape*>i(ss); i; i++)
    {
        Circle* c = dynamic_cast<Circle*>(*i);
        Square* s = dynamic_cast<Square*>(*i);
        if (c)
            DrawCircle(c);
        else if (s)
            DrawSquare(s);
    }
}
//Листинг 10
//RTTI, не нарушающее принцип открытости-закрытости.

class Shape
{
public:
    virtual void Draw() cont = 0;
};
class Square : public Shape
{
// реализация.
};
void DrawSquaresOnly(Set<Shape*>& ss)
{
    for (Iterator<Shape*>i(ss); i; i++)
    {
        Square* s = dynamic_cast<Square*>(*i);
        if (s)
            s->Draw();
    }
}

Я мог бы еще долго говорить о принципе открытости-закрытости. Во многих отношениях этот принцип является наиболее важным для объектно-ориентированного программирования. Соблюдение именно этого принципа обеспечивает ключевые преимущества объектно-ориентированной технологии, а именно переиспользуемость и поддерживаемость.

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

Let's block ads! (Why?)

В сети появилось фото версии PlayStation 5 для разработчиков

image

В интернете появилось фото версии PlayStation 5 для разработчиков. Форма корпуса, аппаратная начинка и подсистема охлаждения, скорее всего, будут такими же, как у финальной версии консоли.

Таким образом, V-образный вырез и массивные вентиляционные решетки по бокам могут сохраниться, как и камера над интерфейсными разъемами, которая присутствовала и в 3-й, и в 4-й версиях. Однако подобного количества портов USB, как в продемонстрированной версии, не ожидается.


Фотография консоли оказалась максимально похожей на все более ранние рендеры.

Основатель ZONEofTECH Даниэл Ротар сообщил, что ему прислали это изображение. Оно отмечено как «prototype 1 not for sale».

В октябре Sony объявила дату поступления PlayStation 5 в продажу. Это случится в конце 2020 года. Согласно плану, приставка начнет продаваться в период новогодних распродаж в конце следующего года.

Разработчики заявили, что устройство получит игровой контроллер с улучшенной функцией вибрации.

Еще одно новшество — адаптивные триггеры, которые встроены в кнопки триггеров L2/R2. Игроки смогут регулировать силу нажатия таким образом, чтобы чувствовать натянутую тетиву лука или ускорение машины на каменистой местности.

Новая приставка будет усиливать эффект погружения, заявил президент и главный исполнительный директор Sony Interactive Entertainment Джим Райан.

В PlayStation 5 установят SSD, скоростной накопитель, который сократит размеры дистрибутивов игр и ускорит загрузку.

Let's block ads! (Why?)

Кто предложил децентрализовать корневую зону DNS

Группа инженеров предложила заменить корневые DNS-серверы peer-to-peer сетью на базе блокчейна. Рассказываем, что об этой инициативе думает ИТ-сообщество.


Фото — Marcus Bengtsson — Unsplash

Чем поможет блокчейн в системе DNS


Задача сертификационных центров (CA) — подтвердить что соединение с сервером защищено и SSL-сертификат, выданный тому или иному сайту, легитимен. Каждый сертификационный центр имеет право делегировать ответственность за проверку сертификатов другим организациям, но пользователи браузеров не могут проверить, насколько надежен тот или иной CA и следует ли он регламентам безопасности консорциума CA/Browser Forum.

Если сертификат скомпрометирован, это открывает возможности для MITM-атак. Подобное уже случалось — в 2011 году иранские хакеры подменили более 500 SSL-сертификатов, выданных центром сертификации DigiNotar. Среди них находились сертификаты Mozilla, Google и других компаний. В течение месяца злоумышленники прослушивали трафик 300 тыс. пользователей.

Некоторые ИТ-эксперты также беспокоятся, что криптографическими ключами корневой зоны DNS управляет одна корпорация — ICANN. Она выступает монополистом и диктует свои условия — какие доменные имена верхнего уровня (TLD) будут зарегистрированы и сколько это будет стоить. Так, подача заявки на новый TLD обойдется в 185 тыс. долларов.

В попытке решить проблему доверия к центрам сертификации и децентрализовать корневую зону, инженеры из Namebase стали работать над альтернативным подходом к организации системы DNS. Они предложили заменить корневые серверы блокчейн-сетью Handshake.

Как это работает


Блокчейн выступает в роли хранилища файла с информацией о доменах. Для их защиты в распределенной сети применяют алгоритм proof-of-work, как в биткоине. Чтобы зарегистрировать домен, пользователи отправляют в блокчейн соответствующий запрос — вот так он будет выглядеть для example.com:
$ hsw-rpc createclaim example
{
  "name": "example",
  "target": "example.com.",
  "value": 1133761643,
  "size": 3583,
  "fee": 17900,
  "address": "ts1qd6u7vhu084494kf9cejkp4qel69vsk82takamu",
  "txt": "hns-testnet:aakbvmygsp7rrhmsauhwlnwx6srd5m2v4m3p3eidadl5yn2f"
}

Помимо прочего в запросе указано название сайта, доменное имя и сумма, которую пользователь готов заплатить майнерам за регистрацию записи в блокчейне. Оплата происходит с помощью утилитарных токенов HNS. По завершению майнинга — занимает от 5 до 20 минут — система наделяет владельца правами на домен. Также веб-мастер получает ключ, с помощью которого он сможет сам ставить криптографические подписи. Такой подход позволит отказаться от классических сертификационных центров.

Токены HNS применяют и при продаже домена. Сделка проходит в формате открытого аукциона — имя передают пользователю, сделавшему наибольшую ставку. Чтобы избежать киберсквоттинга, разработчики Handshake уже закрепили в блокчейн-сети доменные имена первых 100 тыс. сайтов, входящих в рейтинг Alexa. Их реальные владельцы в любой момент могут мигрировать в блокчейн-сеть и даже получить за это вознаграждение.

Мнения


По словам авторов Handshake, возможности их платформы положительно оценил один из разработчиков стека протоколов TCP/IP Винтон Серф. Год назад он сам предлагал внедрить решение, которое повысит доверие к центрам сертификации. Да и в целом идею распределенной корневой системы DNS в ИТ-сообществе поддержали. Хотя бы потому что она открывает несколько интересных возможностей.

Handshake позволяет связать IP-адреса с новыми TLD и использовать домен верхнего уровня как полноценное имя. Например, совершать переход на «namebase.io», вписав в адресную строку «namebase». Хотя некоторые резиденты Hacker News говорят, что функция едва ли будет популярна. Адрес сайта без точки выглядит необычно и запутает пользователей.


Фото — Kaley Dykstra — Unsplash

Также на HN отметили, что в прошлом проекты, подобные Handshake, уже запускались — были Namecoin и ENS. И они не получили широкого распространения. Четыре года назад из 120 тыс. зарегистрированных доменных имен в базе Namecoin проявляли активность всего 28. Есть мнение, что Handshake ожидает та же участь.

Хотя специалисты из Namebase говорят, что их платформа, в отличие от аналогов, не конкурирует с традиционной системой доменных имён и совместима с ней. Если пользователь попробует ввести адрес одного из 100 тыс. самых популярных сайтов, владельцы которых не зарегистрировались в блокчейн-сети, программное обеспечение перенаправит запрос классическим DNS-серверам.

Разработчики намерены сохранять прозрачность и полную совместимость своей децентрализованной системы с протоколами ICANN. И будущее Handshake зависит от того, захотят ли крупные компании перейти на альтернативное DNS-решение.

Дополнительное чтение:

Как узнать, из чего состоит SSL-сертификат
Какие бывают SSL-сертификаты и зачем нужны
Область покрытия и цепочки SSL-сертификатов
Получение OV и EV сертификата — что нужно знать
Как защитить виртуальный сервер в интернете



Небольшой FAQ по работе с SSL в облаке 1cloud.ru. Рассказываем, как добавить, продлить и протестировать сертификаты на разных системах.

Let's block ads! (Why?)

Личность и звук: Пол Войт — “Зеннхайзер 30-х”, отец широкополосников, механического кроссовера и трансмиссионных линий

На протяжении последней сотни лет мы с успехом используем динамический громкоговоритель, как самый распространенный излучатель звука в современной технике. Такое устройство было впервые описано Эрнстом Вернером фон Сименсом в конце 1874-го. Среди отцов динамика также упоминают сэра Оливера Лоджа, который в 1898 году запатентовал устройство, которое отдаленно напоминало современные динамики, а также Честера У. Райса и Эдвард У. Келлога, которые в 1924 году сподобились создать полноценный конусный диффузорный динамик. Однако проблемой этих ранних излучателей стало то, что они воспроизводили диапазон частот, который был даже меньше диапазона ранней грамзаписи, что однозначно снижало их ценность для пользователей.

Между тем, всех этих людей вспоминают как отцов электродинамического громкоговорителя, тогда как человек, который спровоцировал интерес аудиоопроизводителей к динамикам и сделал этот тип действительно популярным в 20-х — 50-х годах прошлого столетия, остался в тени. Это имя — Пол Войт. Его патентная заявка в Британии на электродинамический громкоговоритель была подана всего на несколько недель позже, чем аналогичная от Райса и Келлога. Помимо динамиков его заслугами являются оригинальные лабиринтные и рупорные конструкции акустических систем. Считается, что благодаря его усилиям стали широко использоваться широкополосные динамики, кроссоверы и коаксиальные диффузоры… Воскрешая цикл “Личность и звук”, мы рассказываем о Поле Войте.

Начало пути, образование, семья


Paul G. A. H. Voigt родился 9 декабря 1901-го года в Лондоне, где жили его родители. Он проживал на Боудон-Маунт, 121 Honor Oak Park. Родители Пола были родом из Эльберфельда в Вуппертале, Германия. Мать звали Эмми Питерс (1871-1974), отца — Пол Войт (старший) (1867-1937). Эмми была из очень обеспеченной семьи, которая владела крупной фабрикой по производству одежды и головных уборов. Пол старший и Эмми поженились в 1900 году и сразу же переехали в Лондон, где получили Британское подданство.


Эмми Питерс и Пол Войт (старший) с сыновьями в Лондоне (предположительно 1902-й год

Пол старший присоединился к семейному бизнесу жены и основал компанию Peters-Voigt в Лондоне, как филиал немецкой компании. Основной целью было развитие продаж шляп в Великобритании. Судя по тому, что Пол (младший) смог получить образование в колледже Далвич и Университетском колледже в Лондоне, можно с определённой уверенностью сказать, что семья Войтов была очень хорошо обеспечена.

В противном случае на 2 престижных для того времени ВУЗа, банально, не хватило бы денег. Известно, что в Лондонском колледже Войт остановился на степени Бакалавра электротехники, завершив обучение в 1922-м году. В этом же году он устраивается в Edison Bell, в Пекхэме.

Революция в британской грамзаписи


Практически сразу Войт проявляет себя как талантливый изобретатель и ежегодно получает множество патентов на изобретения. В тот момент Edison Bell является ведущей Британской компанией по производству граммофонов и грамзаписей. Также компания развивает производство радиоприёмников.

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

Войт одним из первых предложил электромеханический способ записи, для чего разработал специальный резак с подвижной катушкой и цепью обратной связи. Благодаря электромеханическому устройству записи лейбл Edibell, принадлежащий Edison Bell, на некоторое время считался лучшим в Британии, а возможно, был лучшим в мире.


радиоприёмник конструкции Войта времен работы в Edison Bell

Edison Bell создали специальное звукозаписывающее подразделение, которое работало по заказам в лучших концертных залах Европы. Им руководил лично Войт, как автор метода звукозаписи. В 1927-м году Войт длительное время пробыл с командой в Загребе, где сделал запись более 600 альбомов.

Разработки в Edison Bell и запоздалая патентная заявка


Ещё до момента, когда Edison Bell прекратила своё существование, Войт трудится на компанию, и у этого была причина. По условиям контракта, в случае ухода или прекращения деятельности Войт получал 19 своих патентов, которые до этого использовались его работодателем.

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

Один из ранних динамиков Войта

Как я уже отметил выше, его британская заявка на патент за номером 238310 на динамический громкоговоритель с подвижной катушкой была подана 20 мая 1924 года, т.е. всего через полтора месяца после того, как заявку на аналогичное устройство зарегистрировали в США (27 марта 1924 года).

Новые устройства и микрофонный провал на BBC


Edison Bell была закрыта в 1933 году в связи с поглощением. Войт, став обладателем прав на использование 19 своих патентов, открыл собственную компанию Voigt Patents Ltd в Сиденхаме. Ещё в 1920-х он женился и проживал с женой Идой в Спринг-Гроув-Хаус, 56 Черч-роуд, в Верхнем Норвуде. Счастливый брак и превосходный вид из окна, который он находил похожим на тот, что он наблюдал из окна родительского дома, явно способствовали его творческой активности.

Он продолжал работу в Британии до конца второй мировой войны. С середины тридцатых до 1945-го он получил ещё 13 патентов. Основой заработка его компании были рупорные громкоговорители для кинотеатров. Также он экспериментировал, создавая перспективные акустические системы, микрофоны и различные устройства для студийной звукозаписи.

Следует отметить, что компания Войта в тот момент представляла собой мастерскую-лабораторию и небольшое производство, а большинство устройств были мелкосерийными, но по верности воспроизведения (записи, захвата) превосходили подавляющее большинство аналогов. Несколько позже Пол Войт знакомится с О. Лоутером, владельцем Lowther Manufacturing Company. Они объединяют усилия и при слиянии их компаний появляется Lowther-Voigt Radio, которая может создавать относительно массовые продукты.

Не обходилось и без провалов. Одна из моделей микрофонов Войта использовалась на BBC. Превосходный для своего времени конденсаторный микрофон позволял передавать весь частотный диапазон человеческой речи и искажал её меньше, чем устройства других компаний.

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

Акустические системы и громкоговорители


Особенно большим считается изобретательский вклад Войта в создание АС и динамиков. Еще в конце двадцатых он начинает работы по созданию широкополосного громкоговорителя, и в 1933-м появляются первые прототипы широкополосного двухдиффузорного динамика Войта с механическим кроссовером, который в британской технической литературе того времени называли вайзер.

Устройство обладало немыслимой для того времени верностью воспроизведения. Благодаря дополнительному ВЧ-диффузору верхняя граница частотного диапазона доходила до 14 — 16 кГц, что для возможностей звукозаписи того времени было даже избыточным. Энтузиасты покупают эти динамики по сей день, считая их параметры одними из лучших за всю историю.

Основной проблемой разработки динамиков в то время являлось отсутствие мощных постоянных магнитов. В первых динамиках, в т.ч. Войта, вместо постоянных устанавливались электромагниты. Позже, материалы, необходимые для создания мощных постоянных магнитов, были нужны фронту, что в какой-то степени отодвинуло создание принципиально новых ГГ. Между тем, Войту удалось добиться плотностью потока 18000 Гаусс (1,8 Тесла).


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

Вершиной достижений Войта в разработке акустического оформления стала высшая форма эволюции рупоров, т.н. Внутренний Угловой Рупор Войта. До настоящего времени многие ценят этот тип акустического оформления и считают его одним из лучших вариантов для hi-fi акустики. Первый прототип этого устройства появился в 1934-м и в этом же году усилиями свежесозданной Lowther-Voigt Radio он был доведен до серии.


Сегодня эта акустика кажется избыточно сложной, но многие из тех, кто проектирует акустические системы, отмечают её уникальные особенности, такие как рассеянное звучания, с т.н. “исчезновением реального источника”, а также способность реалистично с минимальными искажениями передавать СЧ-диапазон.

различные варианты внутреннего углового рупора

Многим предложенные Войтом решения покажутся чудовищной архаикой. Но, оценивая вклад Войта, нужно учитывать, что во времена, когда он внедрял свои разработки, повсеместно ещё применялись чудовищно звучащие индукторные громкоговорители в рупорах и хрипящие “тарелки”.

Палки в колёсах и невзгоды военного времени


С началом войны Войт стал ощущать враждебное отношение британских властей. Его немецкое происхождение (несмотря на британское гражданство) постоянно становилось причиной проблем. Так по этой причине ему было запрещено принимать участие в значимых государственных исследовательских программах. Между тем, современники, среди которых Angier из Decca и Blumlein из EMI, отмечали, что дискуссии с Войтом в институте электротехники были в высшей степени полезны.

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

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


Пол Войт с женой в Канаде (50-е годы)

Послевоенное время требовало быстрого восстановления страны, которую долго утюжила гитлеровская авиация (и даже немного ракеты). Это не предполагало быстрый рост благосостояния и, конечно, лишь единицы могли себе позволить купить мощные колонки и радиоприёмник.


«Внутренний угловой рупор выпущенный по лицензии в 50-е годы»

Всё это, а также предвзятое отношение к его национальности, заставило Войта выехать в Канаду. Лоутер, остававшийся в Британии, продолжал выпускать АС с оформлением “Внутренний Угловой Рупор”, по лицензии Войта. Последнее позволило Полу сравнительно безбедно проживать в Канаде.

Итог


Биография Пола Войта мне чем-то напомнила историю Фрица Зеннхайзера и его компаниии. По сути Войт в 20-е — 30-е внес вклад в развитие электроакустики и звуковой инженерии сопоставимый, с тем, который Зеннхайзер уже внес после Второй Мировой. Возможно, также ассоциативно сработала национальность. Так или иначе, на мой взгляд, Войт несправедливо забытый пионер электроакустики, и я надеюсь, мой материал отчасти исправит эту несправедливость.

Одно из последних фото изобретателя с женой (предположительно 1980-й год

Пол Войт умер 9 февраля 1981 года, оставив в качестве наследства свои изобретения и патенты (всего 32 авторских свидетельства). Многие видные аудиоинженеры почтили его память емкими некрологами. Так авторитетнейший аудиоэксперт, инженер Geoffrey L. Wilson опубликовал посвящение светлой памяти изобретателя в Audio Engineering Society. Paul Klipsch тоже высоко оценил вклад Войта, как одного из значимых, но забытых пионеров в аудио.

Традиционная реклама
Мы продаём акустические системы, в нашем каталоге к сожалению нет ничего произведенного Полом Войтом и его компаниями, представлен широкий ассортимент других АС и прочей аудиотехники высокой верности воспроизведения.

В материале использован фотоконтент:
lowtherloudspeakers.com/lowther-history
www.lowthervoigtmuseum.org.uk
www.roger-russell.com
pinkfishmedia.net/forum/threads/p-g-a-h-voigt-a-great-audio-inventor.78278/page-2

Let's block ads! (Why?)

[Перевод] Занимательная практика для разработчика

Человек остается начинающим в течение 1000 дней. Он находит истину после 10000 дней практики.

Это цитата Оямы Масутацу, которая довольно хорошо излагает суть статьи. Если вы хотите быть классным разработчиком — приложите усилия. В этом весь секрет. Проводите много часов за клавиатурой и не бойтесь практиковаться. Тогда вы вырастите как разработчик.

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

(предыдущие списки заданий для тренировки: 1) 8 учебных проектов 2) Еще список проектов, на чем потренироваться)

Проект 1: Pacman


image

Создайте свою версию Pacman. Это отличный способ получить представление о том, как разрабатываются игры, понять основы. Используйте JavaScript-фреймворк, React или Vue.

Вы узнаете:

  • Как передвигаются элементы
  • Как определить какие клавиши нажимать
  • Как определить момент столкновения
  • Вы можете не останавливаться на достигнутом и добавить управление движением призраков

Пример этого проекта вы найдете в репозитории GitHub
«Мастер совершает больше ошибок, чем новичок — попыток»

Поддержка публикации — компания Edison, которая занимается разработкой и диагностированием хранилища документов Vivaldi.

Проект 2: Управление пользователями


image

Проект в репозитории GitHub

Создание приложения типа CRUD для администрирования пользователей научит вас основам разработки. Это особенно полезно начинающим разработчикам.

Вы узнаете:

  • Что такое маршрутизация
  • Как обращаться с формами для ввода данных и проверять что ввел пользователь
  • Как работать с базой данных — создавать, читать, обновлять и удалять действия

Проект 3: Проверка погоды в вашем местоположении


image

Проект в репозитории GitHub

Если вы хотите создавать приложения, начните с приложения определения погоды. Этот проект можно выполнить с использованием Swift.

Помимо получения опыта по созданию приложения, вы узнаете:

  • Как работать с API
  • Как использовать геолокацию
  • Cделайте приложение более динамичным, добавив текстовый ввод. В нем пользователи смогут ввести свое местоположение, чтобы проверить погоду в определенном месте.

Вам понадобится API. Для получения данных о погоде используйте API OpenWeather. Больше информации об API OpenWeather здесь.

Проект 4: Окно чата


image

Мое окно чата в действии, открытое в двух вкладках браузера

Создание окна чата это идеальный способ начать работу с сокетами. Выбор технического стека огромен. Отлично подойдет Node.js, например.

Вы узнаете, как работают сокеты и как их реализовать. Это главное преимущество этого проекта.

Если вы разработчик Laravel, который хочет работать с сокетами, прочитайте мою статью

Проект 5: GitLab CI


image

Источник

Если вы новичок в непрерывной интеграции (CI), поиграйтесь с GitLab CI. Настройте несколько сред и попробуйте запустить пару тестов. Это не очень сложный проект, но я уверен, что вы многому научитесь благодаря ему. Многие команды разработчиков в настоящее время используют CI. Уметь им пользоваться полезно.

Вы узнаете:

  • Что такое GitLab CI
  • Как сконфигурировать .gitlab-ci.yml, который говорит пользователю GitLab, что делать
  • Как деплоить в других средах

Проект 6: Анализатор сайтов


image

Сделайте скрапер, который анализирует семантику веб-сайтов и создает их рейтинг. Например, вы можете проверить наличие недостающих alt-тегов на изображениях. Или проверить есть ли на странице мета теги SEO. Скрапер можно создать и без пользовательского интерфейса.

Вы узнаете:

  • Как работает скрапер
  • Как создавать DOM селекторы
  • Как писать алгоритм
  • Если не хотите останавливаться на достигнутом, создайте пользовательский интерфейс. Можно также составить отчет о каждом проверенном вами веб-сайте.

Проект 7: Определение настроений в социальных сетях


image

Источник

Определение настроений в социальных сетях это отличный способ познакомиться с машинным обучением.

Вы можете начать с анализа только одной социальной сети. Обычно все начинают с Twitter.

Если у вас уже есть опыт работы с машинным обучением, попытайтесь собрать данные разных социальных сетей и объединить их.

Вы узнаете:

  • Что представляет из себя машинное обучение

Удачной практики.

Let's block ads! (Why?)

Холивар. История рунета. Часть 7. YouTube: комики, зашквары и Кремниевая долина

Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е
Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль
Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции
Холивар. История рунета. Часть 4. Mail.ru: игры, соцсети, Дуров
Холивар. История рунета. Часть 5. Тролли: ЖЖ, бешеный принтер, Потупчик
Холивар. История рунета. Часть 6. Блокировки: Лурк, Лента, 282-я и китайский путь

– Привет. Дальше что? Как дела?… (Рома Жёлудь)

«Ютьюб» – самый посещаемый сайт в России, особенно среди молодёжи. Первой звездой русского «Ютьюба» стал Рома Жёлудь, записывавший бесхитростные ролики о тяжёлой подростковой доле:

– Что я думаю о школе? [Обсценная лексика]

К 16 года Рома стал кумиром миллионов девичьих сердец. Впрочем, ненавидели его с той же силой.

Disclaimer. Эта статья — расшифровка замечательного фильма «Холивар» Андрея Лошака. Есть люди, которые экономят время и любят текст, есть те, кто не может на работе или в дороге смотреть видео, но с радостью читает Хабр, есть слабослышащие, для которых звуковая дорожка недоступна или сложна для восприятия. Мы решили для всех них и вас расшифровать отличный контент. Кто всё же предпочитает видео — ссылка в конце.

Рома Жёлудь, ютубер.
– На тот момент никто не снимал такие ролики. У нас в стране это было вообще непривычно. Меня огромное количество раз избивали на улице. В торговый центр в Питере на мою автограф-сессию для обложки журнала пришло примерно 10 тысяч человек, перекрыли весь проспект, и это было примерно половина фанатов, половина – хейтеров.

(Отрывок из видео) «Иди на ..., иди на ...!»

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

На юного Жёлудя обрушились слава и деньги. Его песни продюсировала Яна Рудковская, он вёл ток-шоу с Малаховым. В семнадцать он всё бросил и уехал в Лос-Анджелес.

– В Америке я прожил почти три года. У меня была американская мечта в жизни. Я почти ничем там не занимался – у меня было там куча секса, куча тусовок. Настроение Линдси Лохан в Голливуде. Купил офигенную просто тачку: Камара, это была чёрная тюнингованная машина, которую я успешно разбил вдребезги, без страховки.

– Три года вот такого угара просто, да? (интервьюер)

– Нет, ну, я занимался очень много… Ммм… Да, угара. Был момент, когда я понял, что меня больше не смотрит столько человек, у меня не заказывают столько рекламы, как раньше и из-за этого со мной не хотят дружить, то есть очень многие люди, которые хотели раньше дружить. Сейчас мне уже на это абсолютно всё равно, но мне уже не очень нравится такая открытость по отношению к людям, потому что когда ты снимаешь видео, ты всего себя отдаёшь и все это могут посмотреть, то есть ты это оставляешь на всю жизнь в мире.

– Что в этом плохого? (интервьюер)
– Нууу, за 10 лет… Есть такой момент: когда ты этого не делаешь, чувствуешь себя спокойно. Чувствуешь себя спокойно.

Блог Ромы Жёлудя по-прежнему существует. Его редкие новые видео не набирают и сотни тысяч просмотров. Жёлудь пробует силы в некоммерческой музыке и ходит на работу в офис, как среднестатистический молодой человек.

– У меня было прям такое чувство, что я конкретно хочу прожить свою жизнь так, как её проживают люди, у кого нет видеоблога, у кого нет популярности. Сейчас я работаю в офисе 5/2.
– И ты ходишь в офис? (интервьюер)
– Да, каждый день. Прикольно, да? Я не ожидал, что так сложится моя жизнь. Но, в плане… Мне и самому это очень интересно. Вот.

(Отрывок из видео) Мой е… чий друг из Италии прислал мне какую-то сраную тряпку с пятном всё с тем же вопросом: «Сможет ли «Тайд» отстирать это пятно»? Вынимает бельё из стиральной машины: «Какая белая ткань! Пи… ц»!

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

Юрий Дегтярёв, основатель креативного агентства My Duck's vision.
– Когда «Ютуб» и «Рутуб» были одинаковыми с точки зрения внимания пользователей к ресурсу… И прошла информация, что «Ютуб» через полгода после этого момента запустит монетизацию, то есть люди несколько долларов, да получать будут, в отличие от «Рутуба». Я с обратной мыслью иду в директорат: «Ребята, есть информация, что «Ютуб» вкрутит эту историю. Давай сделаем это пораньше, тем более мы как бы к этому шли». Значит, через какое-то большое утверждение в «Газпром Медиа» мне сказали нет. Я понимаю, что вопрос… Полгода там осталось, и всё. Я ухожу с «Рутуба» и активно начинаю создавать контент уже в рамках «Ютуба».

(Отрывок из видео) У тебя будет уникальная возможность закопать в землю более трёхсот американцев всего за год.

После ролика, предлагавшего поработать гробовщиком в США, на студию Дегтярёва My Duck’s Vision обратило внимание государство. Глава Росмолодёжи и идеолог движения «Наши» Василий Якименко предложил студии бюджетное финансирование.

– Мы решили, почему бы и нет. У нас есть миллион идей, на них есть потребности с созданием контента и, значит, работе с молодёжью. Мы решили, что здесь вот мы должны, наверное, что-то сделать.

Так возникла платформа для начинающих видеоблогеров «Спасибо, Ева», на которой на деньги Кремля делали первые шаги многие звёзды современного «Ютуба»: Илья Мэдисон, Илья Брусникин, группа «Хлеб», Данила Поперечный, Руслан Усачев и другие.

– Не слукавлю, что процентов, наверное, девяносто Рунета сейчас – это люди, которые немножко подумали – «А не стать ли мне блогером» – после просмотра «Спасибо, Ева», это факт.

Илья «Ильич» Прусникин, музыкант и ютубер.
– Мы просто здесь сделали «пилот», отослали Юрию Дегтярёву. У нас был знакомый, который ему передал. И он сказал: «Вау, круто»! И он сказал: «Давайте с нами». И мы такие: «О!.. Давайте». То есть для это был прям вау, ничего себе. Нас взяли в «Спасибо, Еву»… Ух!

(Отрывок из видео) Сегодня мы с Гафигафом будем изучать алфавит. «Если ты продаёшь гашиш, не пались малыш, не пались. Если взяли тебя менты, то тебе дадут пи… ы. Буква Г – гашиш».

Кристина Потупчик, интернет-деятель.
– Не было никакой цензуры, никого не убеждали, никому не говорили, как нужно сделать, иначе бы ребята просто сбежали бы оттуда, как только появился бы заказ на то, чтобы «давайте хвалить Путина». Те ролики, которые были по нашей поездке, они были оплачены отдельно и был сделан определённый заказ студии Юры. И люди, которые делали, они, конечно, понимают, для кого они это делают.

(Отрывок из видео) Бункеры, замаскированные под рестораны быстрого, а главное, дешёвого питания…

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

Дегтярёв:
– Это самый тупой ролик, и он собрал больше всех. В сумме по миру он набрал… Вот, мы посчитали неделю назад (для презентации счёта) – 140 миллионов просмотров.
– Росмолодёжь себе выписала премию? (интервьюер)
– Нет, премий не было. Я два раза был на инаугурации и одно благодарственное письмо у меня.

– От кого (интервьюер)
– От Путина. Благодарственное письмо у меня есть.

В 2013 году хакеры из группировки «Анонимус» взломали почту Кристины Потупчик. Из её переписки стало известно, что блогеры «Спасибо, Ева» работали на кремлёвские деньги.

Руслан Усачев, ютубер.
– Ева была очень клёвая тем, что она давала возможность в ситуации, когда не было рекламных заказчиков, в принципе не было рынка рекламы на «Ютубе», заниматься творчеством. То есть мне там не переживать за то, что тебе нечем квартиру оплачивать, нечего есть… Вопрос в том, каково это, когда ты внезапно узнаёшь, что тебе платит не «Ютуб», а наши?.. Это интересно! Это становится интересно. Да.

Прусникин:
– Мы были ошарашены, потому что изначально нам никто ничего об этом не говорил. И самое смешное, если «Гуффи Гафа» посмотреть… Говорят, им за это платили из государства и, типа… Они же там срут. Всю систему. Но вот так вот. Ну, удар по яйцам был, прям жёсткий удар.

Усачёв:
– Ну, мы с ребятами там созванивались. На тех же сайтах смотрел переписки, что-то выискивал… Объём хейта, который вылился и говна на меня, на ребят, он – тоже, такой, впечатляющий.

Прусникин:
– Тогда сформировалась чёткая позиция, что я не буду никогда работать с такими структурами. У нас в России не развито такое отношение, как в Америке: что есть республиканцы, есть демократы – каждый может выбрать, и это не будет зашкваром. У нас же это зашквар.

Данила Поперечный, стендап-комик и ютубер.

Фрагмент интервью у Юрия Дудя:
ДП: «Я вот усыплённый этим комфортом, я в какой-то момент: «Так, стоп, Юр, а откуда деньги-то, как монетизируемся»? Он говорит – всё нормально, мы будем в… – он придумал мне п… здёж… Он такой – мы, короче, в этот проект интеграцию водки «Путинка». Я как долбо… б сидел рисовал презентации для водки «Путинка». Слал ему – Юра мне только улыбался. Я теперь думаю: «Вот, б… ь, гандоны»!

ЮД: «И чём он сейчас занимается»?
ДП: «Понятия не имею. Надеюсь, тем же самым, чем он раньше занимался. Пытается, б… дь, у кормушки усесться. Мы все симпатией к нему прониклись. До сих пор я за многое ему благодарен, конечно, но то, что он задним числом всех нас в «пропагандосов» вписал – это, конечно, вообще… здец».

Дегтярёв:
– Ты знаешь, это как будто смотреть порно, но всё ещё задаваться вопросом, откуда берутся дети? Это примерно вот было то же самое, да? Что-то мы как-то ходим на «Селигер» (нас зовут), мы ходим (там, Усачев: я к Медведеву дважды сходил), но я так удивлён, что деньги оттуда. Спрашивают: «Откуда деньги»? От верблюда, б… ть! И когда на серьёзных щах сейчас: «Мы не знали…» Б… ть, мы не слышали ничего про»… Серьёзно? Ну, хорошо.

После ухода из «Спасибо, Ева» Брусники и Усачев основали первое в России независимое сообщество видеоблогеров «Кликлак». Теперь это один из крупнейших «продакшнов» в русскоязычном сегменте «Ютуба», выпустивший более двадцати популярных шоу.

Прусникин:
– Просто решили делать «Кликлак». Комнату Эльдара Джарахова превратили в студию. Снимали, снимали, снимали. Постепенно всё начинает приходить в профессиональный вид – всё.

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

Прусникин:

– В России существует уже несколько компаний, как «Кликлак: есть ребята с «Чикен Карри».

Отрывок из видео шоу «Лига плохих шуток».
Прусникин: «Как журналист Дмитрий Киселёв называет свою жопу»?
Дудь: «Радиоактивный пепел?»
Прусникин: «Кормилица».

Прусникин:
– Есть ребята, которые делают «Биг Рашн Босс».

Отрывок из шоу. «Я прошёл тест на пи… ра»? «Да, ты пи… р. Продолжаем».

Прусникин:
– У нас это уже становится такими «продакшнами», которые уже могут работать в Америке на кабельных каналах. Уже всё, это профессионалы. Но у нас некуда идти, потому что телевидение для любого «ютубера», любого (как сказать) контент-мейкера – это шаг немножко назад. Потому что никакой свободы… Поток… И ты делаешь просто какую-то херь и при этом получаешь немного денег. На телевидении работает очень много крутых авторов, но им говорят: «Нельзя вот это, это и это». А там список просто колоссальный, и именно поэтому это получается, знаешь… как это сказать… без яиц. На телевидении всё без яиц.

Антон Курильчик, Youtube-продюсер.

Фрагмент из «Биг Рашн Босс», интервьюер – Антон Курильчик.

– Вопрос к «Боссу». Ты как бы представляешь своё шоу на телеке?
– Ну, раньше я на самом деле хотел. Ну, типа я думал, что вечернее шоу – это… здец как круто. А сейчас я думаю: «Зачем?» Я ненавижу, когда мной командуют. В этой системе я не смогу, типа, интегрироваться?
– Сможешь. Вот смотри. Смотря что делать. «Большие гонки» (такая передача идёт на «Первом канале»), где Нагиев был. Ерундой какой-то занимались – как бы смесь азиатского или чего-то… Но представь вместо (мы чуть-чуть меняем передачу, придумываем другие ходы внутри)… Её ведёт Босс. Почему нет, на самом деле?
– Ну, только матом надо перестать ругаться. (Комментарий со стороны)
– Ну, это реально, это возможно. (Курильчик)
– Шутить надо с Басковым, Киркоровым. (Комментарий со стороны)
– Так, стой! (Босс)

О том, что «Ютуб» стал полноценной заменой телевизору, говорит и то, что в него пришли телезвёзды. Леонид Парфёнов первым из мэтров нырнул в этот лягушатник и обнаружил, что формат традиционного влога, разговор на камеру, уже не работает.

Леонид Парфёнов, журналист и ютубер.
– Это видно, что это – образ жизни. О себе любимом. Поневоле. Но меня-то все уговаривали, что так и нужно. Нет, так нельзя. Вот сегодняшнее развитие «Ютуба» таково, что нельзя. Ну, не простят! Если оно не будет полчаса, если внутри этих «получасов» не будет семь разномастных материалов… И не может быть никакого куска больше пяти минут. И это оказалось очень затратным. И это нужно делать фуллтайм, это ремесло. В результате всё стало ровно так же, когда у нас раньше был эфир в воскресенье, я в понедельник отсыпался. А теперь выкладка в понедельник, и вот с воскресенья на понедельник у меня остался один день, когда я не ставлю будильник – ровно то же самое, что у меня было 15 лет назад на телевидении.

В «Ютубе» Парфёнову, привыкшему к дорогостоящим съёмкам, приходится снимать «себяшечки» на селфи-палку, а также сниматься в рекламных интеграциях.

Парфёнов:
– Это ведь тоже затраты. Обязательно нужно сниматься самому.
– А ты принял эти правила легко? (вопрос интервьюера)

– Ну а что делать? Они признают только вот так. Я старался как-то разнообразить, я читал «Евгения Онегина» в кабриолете. Или одним куском в Париже, когда читал там Маяковского и бегал ночью у «Гранд-Оперы».

Отрывок из видео Парфёнова:

«Париж бежит, провожая меня
Во всей невозможной красе.
Париж бежит, провожая меня
Во всей невозможной красе».

Парфёнов:
– Подошли полицейские (ночь глубокая) – бегает человек, машет руками и читает по-русски стихи. Да, и сам себя снимает. Я объяснил, что это русский «Ютуб».

В 2004-м Парфёнова уволили с «НТВ», а после обличительной речи на вручении премии имени Листьева госканалы окончательно прекратили с ним сотрудничество. Параллельно с блогом Парфёнов продолжает выпускать в том же «Ютубе» новые эпизоды исторического сериала «Намедни». Правда, теперь без «Намедни» в названии. Бренд, созданный Парфёновым, запретила использовать телекомпания «НТВ».

Парфёнов:
– Я уже давно ни разу не был в «Останкино» и совершенно не тянет, разумеется. Я уже никогда не буду ни в каком офисе сидеть. В кошмарном сне не представляю, что я пойду на какую-то летучку, на какую-то планёрку? Куда бы то ни было! Вообще, кто-то что-то будет мне говорить про то, как мне работать? Вот – это стоит памятник примерно от времени, когда были такие телевизоры, и вот до сих пор я им не пользуюсь.

Первым из политиков, кто догадался открыть свой канал, стал Алексей Навальный. Выложенный в начале марта 2017 года фильм «Он вам не Димон» моментально попал в тренды «Ютуба». Меньше чем через месяц, 26 марта, на протестные митинги по всей стране вышли десятки тысяч молодых людей – небывалый прежде случай.

Алексей Навальный, политик и ютубер.
– Я человек текста, я не люблю видео, я сам не смотрю ролики, мне всегда хочется, чтобы они быстрее шли (мне это очень медленно). И в каком-то публицистическом соревновании текстов я, может, изобью всех своих политических противников, но это будет соревнование внутри трёх процентов, пяти процентов в крупных городах. А хочешь общаться с большими массами людей – нравится тебе, не нравится – делай «видосики».

Летом этого года в Москве прошла волна массовых протестов: сначала против не допуска кандидатов на выборы, а потом уже против полицейского беспредела, с которым столкнулись демонстранты.

Поперечный на митинге:
– Они шьют уголовные дела, они привозят ОМОН, закупают водомёты и показывают в новостях картинки, как людям ломают ноги, которые просто вышли на пробежки. Скажите, мы боимся их? (толпа отвечает – «Нет»). Мы правда боимся людей, которые на встречу с мирными гражданами, безоружными, вышли все в касках и броне? (толпа отвечает – «Нет»).

Одной из ведущих сил московских протестов стали «Ютуберы». Данила Поперечный, Эльдар Джарахов и Ресторатор специально прилетели из Питера, чтобы участвовать в митингах. Популярный видеоблогер Николай Соболев последние месяцы почти в каждом освещает митинги и уголовные дела против демонстрантов.

(Фрагмент из ролика) Николай Соболев: «Первый канал» тут же рассказал нам об акциях протеста, вот прямо подробно, только не в России, а во Франции. Ну, а о митингах в Москве редакторы передачи «Время», видимо, не слышали вообще ничего.

Николай Соболев, ютубер.
– На «Территории искренности» все говорят… Ну… Постараются говорить то, что думают. Как мы можем говорить о чём-то хорошем, если столько всего очевидно плохого есть, с чем нужно, необходимо разобраться. Когда человека сажают на 4,5 года, который просто походил на улице… Когда сажают за твит на 5 лет – это же сюрреализм. Я не верю, когда каждый раз такое происходит – меня просто трясёт от этого.

Пропагандистский контент в «Ютубе» не приживается. Воспевающий Собянина клип «Москва» Тимати и Гуфа, получив рекордные полтора миллиона дизлайков, был удалён авторами. Соболев сам попал в похожую ситуацию, когда сделал рекламу парка Горького накануне выборов мэра в столице.

Соболев:
– Мы это вообще подали… Вот это, ну… В городе есть такое место прикольное, типа.
– Это, конечно, напоминает немного отмазки Гуфа по поводу клипа… (интервьюер)

– Я его понимаю, я тебе так скажу. Я в выпуске так и сказал: я более чем уверен, что Гуф мог и не взять за это бабло. Вот он по степени распиздяйства, вероятно, это равно – Николай Соболев в прошлом году. И вот эта ситуация прям отрезвила – на меня вылили не просто бак холодной воды; на меня вылили горячую воду, потом холодную, потом опять горячую, потом в лёд засунули меня, забили туда… И я такой: «Ооо, Господи Боже ты мой». Все коллеги по цеху, вся аудитория – 100 тысяч человек отписалось за две недели.

(Фрагмент ролика канала Morgenstern) Ой! Привет, ублюдки! Я расскажу вам, почему Николай Соболев – продажный пиз… абол и лицемер.

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

Илья Варламов, блогер и ютубер.
– Если чертить кривую успеха работы Кремля в сети, то будет «плохо, плохо, плохо», потом – взлёт, и сейчас – снова «плохо, плохо, плохо». То, какие сейчас происходят процессы в «Ютубе» – примерно то, что происходило в ЖЖ в начале десятых. Все эти вот сливы, все эти какие-то разоблачения, зашквары. Сделали клипы «За Путина», ещё что-то. И несколько вариаций… И всё… Извинялись, сливались… Кошмар там: простите…

(Фрагмент ролика канала Юлик) Мне тошно. Я прошу прощения у тех, кого я разочаровал.

Усачев:
– То, что сейчас происходит перед этими выборами – это просто позорный скандал.

(Фрагмент ролика канала Пикули) Им там всем раздали какой-то общий план действий что ли – говорите про секс в ваших клипах про выборы? И эти озабоченные е… ланы побегут на выборы! Ха-ха! За кого они нас принимают, господи?

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

История с парком Горького сделала Николая Соболева, как он утверждает, взрослее и ответственнее. За поддержку московских протестов ему теперь приходится платить из собственного кармана.

Соболев:
– Это как бы аксиома в нашем бизнесе: если ты затрагиваешь темы протестов, митингов и так далее – теряешь рекламодателей. Как-то раз я затрнонул эту тему; мой менеджер напоминает: «Коля, а ты помнишь, что происходит с людьми, которые затрагивают такие темы». Я говорил – да, и думал, что надо бы с этим подзавязать, ну, типа надо как-то градус снизить. А в этом году я говорю: «По… й». Пусть уходят реально, типа это вот для меня важнее.

– Подожди, вот насколько всё критично: ты прям потерял… То есть… У тебя стали?.. (интервьюер)
– Нет, просто заработки стали ниже в два раза.

Парфёнов:
– Что для нас «Ютуб», или интернет? (интервьюер)
– То есть, конечно, как всякая возможность частной инициативы при огосударствлении почти всех сторон российской жизни он несёт вот эту функцию: а! это полянка, на которой скачут зайчики, потому что вокруг – страшный тёмный лес с волками. И такому даже матёрому волку, как Золотову, тоже нужно выскочить на эту поляну, если ему вдруг захотелось поскакать. Но это же не от того, что поляна так хороша, а от того, что лес так страшен. Там скакать нельзя. Совсем.

В советское время эту функцию нёс рок. Он был больше чем музыка, потому что он был свободой. Ну, вот мы вернулись обратно туда же, и теперь мы видим, что вот рэп, «Ютуб», все формы, которые каким-то образом передают современность не казённым способом – они страшно востребованы, больше, чем они того бы заслуживали, потому что корчится улица безъязыкая и её нечем говорить и разговаривать.

Говорит Face:
– Я выступаю здесь ради того сегодня, чтобы у моего народа была свобода и было право выбора.

Среди знаменитостей, поддержавших московские протесты, были не только блогеры, но и независимые музыканты, популярные в Рунете.

(Фрагмент интервью группы Ic3peak):
– Как вы популяризируете своё творчество? Как вы взаимодействуете? Вам не нужен «Первый канал» для этого?

– Нет, нам вообще ничего не нужно. Нам минимум ресурсов нужно. Мы вдвоём и доступ к интернету. Нет каких-то дурацких бюджетов. Нас никто не спонсирует из США (есть такая версия). Мы когда запускали проект, мы изначально позиционировали себя как интернет-артисты. У нас везде написано до сих пор, что мы из интернета. То есть где наш «лэптоп» – там и наш дом; где наш доступ, подключение к «вай-фаю» и так далее.

У дерзости интернет-музыкантов и видеоблогеров есть и экономическая основа: развитие онлайн-платформ и стриминговых сервисов позволяет создавать и раскручивать контент без продюсеров и государства. На это намекал Юрий Дудь в своей речи на премии GQ, где в номинации «Лицо с экрана» все финалисты были из «Ютуба».

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

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

Владимир Соловьёв:
– Кто эту вообще мразь раскручивает ничтожную? Какие там деньги? Кто это всё накручивает? Та самая либерастня пытается поднять его наверх. Они не понимают, что этим они открывают врата ада.

Соболев:
– Я бы сам бы подошёл бы себе леща дал, если бы я сказал сейчас, что такой я бедный. Всё равно это огромные деньги в сравнении с населением… Там, зарплаты. У меня миллион в месяц – расходы. Больше, чем миллион в месяц. У меня только зарплаты сотрудников – это тысяч 650.

– То есть ты сам себе хозяин? У тебя нет никакой продюсерской компании? (интервьюер)
– Есть рекламное агентство WildJam. Они мне не диктуют условия, они находят для меня рекламу, и я для них произвожу контент. Это взаимовыгодные условия. Я абсолютно независим, на меня никто не давит пока, слава Богу.

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

Анастасия Креслина («Айспик»):
– Мы просто в России находимся. Мы всего лишь зеркалим всё происходящее. Ну, вот, например, текст для «Смерти больше нет» – это реально после перевыборов Путина. Я посмотрела его речь и как-то просто закрыла вкладку и написала часть текста, как такой выплеск, реакцию. И, видимо, это сильно совпадает с тем, что чувствует наше поколение, судя по реакции на альбом, на тексты.

Государство тоже отреагировало – старыми, верными офлайновыми способами. В туре у группы вдруг начались неприятности. Перед концертом в Воронеже в клуб пришёл представитель Роспотребнадзора с жалобой на отравление; почему-то в сопровождении полиции.

Прямая речь сотрудника при исполнении:
– Вы прибыли по сообщению. Необходимо опросить вас, формально организатора этого концерта и двух солистов
– Солистов вам зачем трогать?
– Они здесь, получается, выступали… Что здесь за музыка?
– Они ещё не выступали. Артисты и вот это протокол – как это увязать?
– Там просто ситуация какая: здесь – запреты деятельности, здесь деятельность, допустим, как организации вашей, так деятельность музыкантов.

Николай Костылев («Айспик»):
– Они просто видят, что эта музыка резонирует, им это не нравится, их это пугает, поэтому они пытаются этими древними, доисторическими способами нас запретить. Никаких законных оснований у них нет, поэтому строят какие-то смешные пакости, и все над этим просто угорают. Сегодня у нас серия «Отправление».

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

(В толпе отвечают на вопрос «Почему вас не пустили на концерт») – Потому что… (перебивают).

– Потому что Россия – лучшая страна в мире.
– Россия? Да!
– Россия – вперёд.
– Добро пожаловать в восьмидесятые.
– А потом говорят: почему все хотят съе… ать,… ять, отсюда?

Программист-предприниматель из Таганрога Дмитрий Думик переехал в Кремниевую долину три года назад. Успешно развивает здесь платформу для создания чат-ботов в «Фейсбуке». Стартап уже зарабатывает несколько миллионов в год и позволяет думать не только о работе.

Дмитрий Думик, SEO и основатель Chatfuel.
– Здесь регулярно происходят какие-нибудь «саунд-хилинги», когда все раскладываются, бьют по чашам, какие-то мантровые пения. Это всё вещи, которые Сан-Франциско унаследовал от хиппи. Получается, микс, когда все эти ребята, которые интроверты, садятся и начинают, значит петь мантры абсолютно невероятные… В общем, открывает душу. Я помню этот момент, когда это всё для меня как бы, ну, вот так вот выключилось (щёлкает пальцем). Это был 2017 год, меня пригласил Цукерберг на завтрак. Я выхожу оттуда и понимаю, что я учился там в Таганрогском государственном политехническом университете. Нас там на «Ассемблере» заставляют какие-то древние технологии изучать, и такой ты – фигась, и попал на небо; и там встретился с главным. Входишь и понимаешь ты, что… всё, отпустило. Вот эта конкурентная энергия, энергия доказательства себе на ней можно бежать, но на ней можно бежать только какое-то время. Потом она становится токсичной, потому что ты играешь не свою игру. И вот тут начинается какая-то работа: смотришь в себя, пытаешься понять какие-то практики, пытаешь нащупать смысл своей жизни.

Добро пожаловать! Вот наш дом! «Комьюнити» нового формата. Здесь у нас «бэкъяр», вот здесь прямо делаем йогу, ну, и иногда занимаемся боксом. Агрессию куда-то же приходится девать – всё не замедитируешь.

Андрей Дороничев, директор по продуктам в Google, глава приложений AR, VR и Stadla.

– Я сам. Должно было быть интервью про интернет, а пацаны в гараже.

«Добрый дом» основал Андрей Дороничев, создатель одного из первых приложений в России для скачивания музыки и видео. Последние 10 лет Дороничев работает в «Гугл». Среди его патентов мобильное приложение для «Ютуба», которое есть в каждом телефоне. Сейчас занимается разработкой игрового аналога «Ютуба» и продуктов в области VR.

Дороничев:
– Мои патенты – первый, третий, пятый. Остальных чего-то… нет. Здесь, в «Добром доме», ты видишь какое-то там ощущение «комьюинити», все эти – йога и медитации, спорт, какие-то там тусовки, общение, вот это всё – это всё на самом деле просто способ инженерить, задизайнить свою жизнь с оптимизацией не только для успеха, но и для счастья.

Жильё в Сан-Франциско из-за близости к Кремниевой долине – самое дорогое в США. Дороничев выкупил дом у старого джазового музыканта и капитально отремонтировал. Теперь тут обосновалась коммуна стартаперов из России и Белоруссии.

Микита Микадо, основатель и CEO PandaDoc — программного продукта для автоматизации документооборота.
— Виртуальная подпись изменит весь мир. И ты это знаешь и я это знаю. И все Вы
это знаете.
— Мне кажется, чтоб без чатботов ничего не будет.
— Только в VR друзья, только в VR.

Настя Сартан, основатель и CEO StyleHacks — голосовой помощник по подбору одежды.
— Всё может работать только через голос.

— А где вино? Безалкогольное.
— Ну вот я здесь уже предсттавляю, что будет комментарий на ютубе, предприниматель из Сан Франциско на белом Range Rover'е пьет белое безалкогольное вино.

Дороничев:
– Тебе приходится серьёзно разбираться с вопросами стрессоустойчивости – как ты делаешь себя максимально эффективным. Ты заметил, у нас никто не пьёт например? Ты адекватно не можешь себе позволить бухать и снижать свои интеллектуальные способности. На следующий день или через два дня у тебя просто замедляется мозг. Тебе итак-то постоянно не хватает, постоянно чувствуешь себя идиотом. Это просто данность практически для всех здесь. Ты можешь быть кто угодно и ты постоянно чувствуешь, что ты недостаточно хорош по сравнению с… Когда есть некий Илон Маск рядом. Я уверен, что у него тоже кто-то есть.

Думик:
– Особенно в Сан-Франциско важен качественный круг поддержки. Это самое лучшее место на земле, чтобы почувствовать себя говном. Сюда приезжают самые целеустремлённые, амбициозные, уязвлённые, конкурирующие чуваки. Ты приезжаешь и сразу понимаешь, что ты – то самое говно, и тебе регулярно об этом напоминают. Вот поэтому я выбираю жить здесь.

В команде Думика 30 человек, в офисе Сан-Франциско всего 10 сотрудников, остальные – на удалёнке. Так работает сейчас большинство IT-стартапов. География – весь мир: Бразилия, Сербия, Ямайка и, конечно, Россия.

Думик:
– Программисты, аналитики, дизайнеры – все москвичи. Специалисты сопоставимого уровня мне в Сан-Франциско обошлись бы в 3-5 раз дороже. У нас потрясающая команда, я скучаю по ним, когда уезжаю. Мне нравится приезжать в Россию, мне нравится встречаться с нашими людьми и шутить про ёжика в тумане.

– Я думала, что русские очень серьёзные и напряжённые, ну, типа военных, но пришла в компанию, а тут все на расслабоне, занимаются йогой, кундалини, медитируют.
– И они совсем не пьют?
– Да, совсем. Я думала, что придётся пить водку.

Думик:
– К русским, особенно в долине, относятся с большим уважением, признавая наши немалые таланты, инженерные и технические. Мне кажется, в Америке проще делать бизнес. Проще, потому что тебе меньше нужно отвлекаться на очень странные, непонятные истории. В России очень много непредсказуемости в этом плане, постоянные изменения венчурного климата. Сейчас история с Barring Vostok, когда основателя фонда, который помог создать русский интернет, посадили. Ну, мне не нравится тратить свою энергию на вот эти вещи – на борьбу, да… Не то чтобы на борьбу, в смысле это отвлечения какие-то, которые тебя в конечном итоге не приближают к своей цели. В этом плане здесь проще. Всё больше людей хотят переехать, к сожалению. Вообще, мир сейчас – это настолько самобалансирующая система: где ты создаёшь напряжение – мгновенно люди реагируют. Уже настолько глобализованное общество, у тебя нет границ: просто берёшь и переезжаешь, и в этом плане будут выигрывать те государства, которые будут заинтересованы в том, чтобы приезжали к ним люди определённого склада. И даже вот виза, по которой я сюда приехал, она называется O1 – это виза для людей, как они говорят extraordinary builders, то есть это выдающиеся люди в своей сфере. Ну, типа, если ты топ-1% в своей тусовке, тебе дают визу или «грин-карту». И это политика государств: кого ты хочешь видеть… Но такие люди неудобны для системы классической, потому что они борцы, они не будут молчать. Если им что-то не нравится – они выйдут и скажут: «Ну, это ху… ня, вот». Поэтому текущему нашему правительству такие люди не интересны.

Год назад президент Путин объявил о декриминализации 282-й статьи, но за слова в интернете по-прежнему судят. Студента факультета политологии Высшей школы экономики Егора Жукова обвиняют по 280-й. Эксперт ФСБ нашёл в его видеоблоге призывы к экстремизму, при том что Жуков из ролика в ролик пропагандировал ненасильственный протест.

(Фрагмент из ролика Егор Жукова) – Я не устану это повторять: «Власть в России можно сменить только мирным путём». Я уже снял два ролика на эту тему, но я не устану это повторять, пока это не станет мейнстримным мнением.

Как и многие студенты, он впервые вышел протестовать на акции протеста «Он вам не Димон» 26 марта. Тогда же завёл блог на «Ютубе» и быстро набрал больше ста тысяч подписчиков.

(Фрагмент из ролика Егор Жукова) – Красивые кадры, не правда ли, и мне даже вроде бы должно быть приятно, что я где-то засветился. Но вот что-то как-то нихера.

На популярном среди студентов Высшей школы экономики батле либертарианец Жуков схлестнулся со своим бывшим одноклассником леваком Степановым. Читка бывает и получше, но вот начитанности позавидовал бы сам Оксимирон.

(Фрагмент ролика из батла) Степанов: «Я, как Гнойный, разрушу твою империю. Атлант расправил плечи? А Егор перья! Ты на камеру судачишь о революции – твои подписчики портят одеяло от полюции».

Жуков: «Ты со мной не меряйся письками, потому что за любую, за любую франкфуртскую школу найдётся своя австрийская, сука! Я тебе дам по е… алу томиком Фридриха фон Хайека! Может, тогда у тебя мало-помалу в голове начнётся хоть какая-то динамика, и ты поймёшь, что миром правят не зажравшиеся капиталисты с пузом, а всего-навсего, а всего-навсего те, кто талантливы и компетенты. Вырубай своего внутреннего Маркузе, понял… лять»?

Алексей Степанов, студент, активист компании «Арестанты дела 212».
– Когда я узнал, что Егору шьют уголовное дело, я сначала, конечно, не поверил, но потом… По мне прям прошёлся холод, и все эти идеологические различия, всё то напряжение, что между нами было, всё это неприятие – оно всё мигом ушло. И сейчас я активно занимаюсь, мы делаем кампанию «Арестанты дела 212».

Стас Топорков, друг Егора Жукова.
– Надо отличать слова от поступков и любое преследование за слова несправедливо.

Евгений Овчаров, друг Егора Жукова.
– Если власть считает, что такими действиями, такими карательными мерами она может запугать… ну… Она может добавить страха – это правда, но кроме страха она добавляет ещё и злости, и сплочённости. Между теми, кому страшно, так или иначе возникает сплочённость.

Жуков:
– Россия неминуемо будет свободной, но мы с вами можем не дожить до этого, если позволим страху победить. Потому что когда побеждает страх, наступает тишина. Тишина, которая будет нарушена звуком торможения чёрного «воронка» за окном и делящим жизнь на до и после, грохотом дверного звонка.

Андрей Исаев, первый заместитель руководителя фракции «Единая Россия» в ГД РФ.

– Крупнейшие информационные ресурсы, такие как «Фейсбук» и «Гугл», грубо нарушили российское законодательство о выборах.

Цитаты других представителей официальной власти:
– Я считаю, что «Фейсбук», «Гугл», «Твиттер» должны быть отключены.
– «Гугл», «Фейсбук», «Твиттер» – это не платформы, где какие-то нехорошие люди просто за деньги размещают незаконный контент. Они участники войны.
– Закроют ли «Гугл» или «Фейсбук»? Я думаю, рано или поздно – да.

«Ютуб» – американский видеохостинг, принадлежащий «Гугл». На запросы Роскомнадзора компания почти не реагирует. В сентябре после московских выборов была создана комиссия по расследования иностранного вмешательства. Власть, похоже, решила всерьёз разобраться с неподконтрольной компанией.

Андрей Климов, председатель временной комиссии СФ по предотвращению вмешательства во внутренние дела.
– Любопытная деталь: в день голосования американская интернет-платформа фактически поставила в привилегированное положение так называемый «список Навального», направленный на поддержку определённых кандидатов в Мосгордуму. Не будем забывать и о роли зарубежных интернет-платформ в мобилизации граждан на беспорядки в Москве летом текущего года.

Александр Плющев, журналист.
– Ты можешь убить все СМИ, просто запретить в принципе, но для «Ютуба», в общем, мало что изменится на завтра, абсолютно. Просто потому, что Юрий Дудь – не СМИ, или потому, что все эти влоги – не СМИ. Поэтому мне тут видится только то, что они будут пытаться технологическими методами ограничивать доступ людей туда и доступ информации к людям. Будет ли это автономный Рунет, будет ли это что-то другое? Я очень надеюсь в этом смысле на то, что нас всех спасут непрофессионализм и коррупция. Если поручить самым талантливым в этом смысле людям, которые доведут до такого состояния, как, например, там, государственный поисковик «Спутник», которым мы, естественно, все пользуемся, все любим его, то никакого автономного Рунета может и не быть.

Спутник — государственный поисковик, созданный в 2014 году. Доля «Спутника» на рынке поисковиков составляет 0,01%.

(Фрагмент концерта группы «Айспик» и продолжение истории в воронежском клубе – беседа сотрудников правоохранительных органов с администрацией заведения)

«Я теперь готова ко всему на свете.
Я отсидела свой срок в интернете.
Выхожу на улицу гладить кота.
А его переезжает тачка мента».

– У вас вопросы, я так понял, по Роспотребнадзору, правильно?
– Нет, у меня сейчас вопрос по выступлению.
– На каком основании вопрос?
– В смысле, на каком основании?
– В смысле? В прямом.
– Я хочу узнать, законно вы здесь находитесь или нет?
– Деятельность данного заведения временно приостановлена.
– Мы это поняли, да.

– Будьте добры, пожалуйста, завершить своё музыкальное воспроизведение и покинуть помещение.
– Он-то тут при чём?
– Вы же менеджер.
– Но я не выступаю на сцене, я не исполняю произведения.
– Но вы их менеджер.
– Ну и что?
– Ну и что? Он же не их начальник, правильно?

(Солист группы на сцене) – Тут поступила информация, что нашего менеджера сейчас допрашивают…

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

(Беседы участников и менеджеров группы за кулисами) – Они тебя что, п… здили?
– Не, ну там реально все обозлённые были.
– Не, ну тебя реально типа прижали к стене. Со стороны это выглядит как полный… здец.
– Пытался мне угрожать, двери ломать, взял за шею, к стене…
– Это как бы наш обычный день за последние 10 дней.
– Бл.., мне ничего не подкинули?
– На самом деле резонный вопрос. Мы сейчас всё время проверяем куртки. Проверяем сумки, куртки.

(Голоса из толпы на улице) – Классный концерт, всё понравилось, но я не попала. Полиция не пустила меня на концерт.
– Вот один аргумент – всё, до свидания. Гуляйте на все четыре.
– А почему не пустили?
– Экстремизм.

(Музыканты и толпа хором кричат слова из текста одной из песен) – Я заливаю глаза керосином – пусть всё горит, пусть всё горит. На медосмотре вся Россия – пусть всё горит, пусть всё горит.


Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас, оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас:Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).

Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?

Let's block ads! (Why?)