...

суббота, 15 февраля 2020 г.

Scala 2.13 станет последней версией… Scala2, после нее будет Scala3

В декабре Scala-комьюнити опубликовало пресс-релиз о том, что Scala 2.14 никогда не выйдет. Мартин Одерски и Ко приняли решение, что необходимо сконцентрироваться на работе над Dotty/Scala3.

Сообщество Scala программистов (в моем лице в том числе) безмерно этому радо, т.к., честно говоря, давно пора было. Scala застыло в прорывном развитии на несколько лет, что на фоне стремительного роста популярности better-java-kotlin приводило к оттоку разработчиков и даже целых компаний.

Scala3 должна стать тем самым большим скачком вперед, который вернет интерес нынешним и будущим энтузиастам ФП на JVM.

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

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

Сроки


К концу 2020 обещают зарелизиться. И еще в процессе отчитываться о майл-стоунах.

Бинарная совместимость


С Scala 2.13.1. И общую стандартную библиотеку. Здесь нет значительных компромиссов в угоду обратной совместимости потому что на самом деле 2.13 (и несостоявшаяся 2.14) задумывались как эволюционные промежуточные шаги на пути к Scala3. Scala3, напомню, благодаря TASTy обещает вечную бинарную совместимость в будущем.

Типобезопасное метапрограммирование


Метапрограммирование в Scala3 полностью переосмыслено. Поэтому макросы от 2.х придется полностью переписать. За подробностями отправляю сюда.

Производительность


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

Поддержка Scala 2


Продолжится. Но все улучшения будут сначала заливаться в 3-ку, а потом при возможности портироваться обратно в 2-ку.

Миграция


Предоставляется набор утилит для автоматической проверки совместимости кода к переходу на Scala3, а так же конвертации исходный файлов из 2 в 3 и обратно (!). Обещают не повторять ошибок Python'а (при переходе с 2 на 3), поломавшего всю совместимость с существовавшей кодовой базой Python2.

Поддержка IDE


Команда Скалы работает совместно с разработчиками Visual Studio Code и IntelliJ IDEA. Обе уже понимают новую Скалу и обновляются параллельно с самим языком. Что не может не радовать, потому в современном мире нельзя разрабатывать языки без оглядки на IDE — ведь именно проблемы с парсингом и смертельно долгой компиляцией Scala2 привели в свое время IntelliJ к созданию своего лунапарка с блекджеком и шлюпками под названием Kotlin.

Let's block ads! (Why?)

[Из песочницы] Android Remote Debugger — удаленная отладка Android приложений

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

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


  • logcat – инструмент для просмотра логов приложения, в том числе и исключений при краше. Его можно использовать как и в Android Studio, так и в терминале, через adb;
  • Android profiler – мощный инструмент, который позволяет просматривать все сетевые запросы, загрузку процессора, памяти и батареи.

Также существует множество сторонних решений, позволяющих просматривать сетевой трафик, базы данных, shared preferences и др.
У всех этих инструментов есть преимущества и недостатки. К их минусам можно отнести следующее:


  • множество зависимостей различных инструментов;
  • сложность использования – как правило все инструменты ориентированы на разработчиков и неудобны другим участникам команды, например, тестировщикам, аналитикам или back-end разработчикам. Обычно, последним, всегда приходится дергать android-разработчиков, чтобы просмотреть какие-либо логи;
  • обязательное подключение телефона к компьютеру, например, через usb-кабель.

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


Android Remote Debugger

Мое решение является очень простым в использовании, так как позволяет отлаживать приложение прямо в браузере, без подключения Android устройства к компьютеру. Данное решение включает в себя четыре раздела для отладки:


  • Logging — просмотр логов приложения, включая крашы;
  • Database — просмотр и редактирование записей в базе данных;
  • Network — просмотр всех сетевых запросов и ответов в удобном формате;
  • SharedPreferences – просмотр и редактирование данных SharedPreferences.

Работа с отладчиком

Для работы с отладчиком нужно сделать следующее:


  • подключить и проинициализировать библиотеку;
  • запустить приложение;
  • вы получите уведомление в панели уведомлений, типа http://xxx.xxx.x.xxx:8080. Просто откройте браузер на любом компьютере, подключенный к той же сети (Wi-Fi или LAN) что и Ваше Android устройство и перейдите по указанной ссылке;
  • Вам будет предложено четыре раздела, выберите нужный и начните работать с данными подключенного приложения.

Ниже представлены скриншоты некоторых разделов:


Logging


logging.png

Database


database.png

Network


network.png

Описание разделов отладки

Для инициализации библиотеки необходимо вызвать AndroidRemoteDebugger.init(applicationContext) в коде приложения. Также можно указать дополнительные параметры с помощью AndroidRemoteDebugger.Builder:

AndroidRemoteDebugger.init(
    new AndroidRemoteDebugger.Builder(applicationContext)        
        .enabled(boolean)    // управление включением
        .disableInternalLogging()    // отключить внутренние логи Android Remote Debugger
        .disableJsonPrettyPrint()    // отключение форматирования json в разделах `Logging` и `Network`
        .disableNotifications()    // отключить показ уведомлений статуса работы Android Remote Debugger
        .excludeUncaughtException()    // исключить печать логов при краше приложения
        .port(int)    // использовать другой порт, отличный от 8080
        .enableDuplicateLogging()    // все логи из раздела `Logging` будут также напечатаны в logcat
        .enableDuplicateLogging(new Logger() {  // callback для получения всех логов из раздела `Logging`
            @Override
            public void log(int priority, String tag, String msg, Throwable th) {
            }
        })
        .build()
);

При инициализации библиотеки, в Вашем приложении запускается локальный сервер. В качестве веб-сервера используется NanoHTTPD. Дальше Вы получите уведомление об успешном или неуспешном запуске. Сервер может не запуститься, если Вы, к примеру, уже запустили сервер в другом приложении с портом 8080. И в уведомлении Вам будет предложено повторить попытку запуска с текущим портом или повторить запуск с другим портом. Порт Вы также можете указать заранее в AndroidRemoteDebugger.Builder.


Logging

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

Для логирования сообщений нужно вызвать статический метод AndroidRemoteDebugger.Log. Данный метод имеет множество разных перегрузок. Вызывать их можно в любом месте вашего приложения. При их вызове сообщение сразу сохраняется в базе данных, а в разделе Logging каждую секунду отправляется запрос на сервер на получение новых логов. На данный момент все логи очищаются при следующем запуске приложения.

Пример вызова: AndroidRemoteDebugger.Log.d("tag", "message").

Также очень удобно использовать данный метод логирования совместно с библиотекой Timber (автором которого является Jake Wharton), пример:

class AndroidRemoteDebuggerTree extends Timber.Tree {
    @Override
    protected void log(int priority, @Nullable String tag, @NotNull String message, @Nullable Throwable t) {
        AndroidRemoteDebugger.Log.log(priority, tag, message, t);
    }
}

...

public class App extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        Timber.plant(new Timber.DebugTree(), new AndroidRemoteDebuggerTree());
    }
}

Network

Раздел Network позволяет просматривать все сетевые запросы и ответы в компактном и расширенном виде. В компактном виде отображается минимальная информация, без тела и заголовков запроса. В расширенном виде отображается вся информация. Принцип получения данных в этом разделе практически аналогичен разделу Logging. При необходимости можно выполнить фильтрацию по HTTP коду ответа или по подстрокам. Можно также показывать только те запросы, в которых произошла ошибка. Как и в разделе Logging все логи можно скачать.

Для работы этого раздела необходимо использовать библиотеку OkHttp3 и добавить интерцептор NetLoggingInterceptor. Для получения достоверных данных, рекомендуется добавить его последним, после других интерцепторов. Пример:

OkHttpClient client = new OkHttpClient.Builder()
    // other interceptors
    .addInterceptor(new NetLoggingInterceptor())
    .build();

Database

Данный раздел позволяет просматривать базы данных. Ничего дополнительного для его работы делать не нужно. Необходимо только выбрать базу данных и таблицу. Данные будут показываться страницами по 15 записей. Можно выполнить поиск данных, удалить записи, радактировать их. Можно также выполнить любой sql-запрос.


SharedPreferences

Данный раздел позволяет просматривать все файлы SharedPreferences. Можно выбрать любой файл и просмотреть, удалить, изменить или добавить запись. Также есть возможность удалить сам файл SharedPreferences со всеми данными. Кроме того можно выполнить поиск по подстрокам.


Как подключить Android Remote Debugger

Добавьте в корневой build.gradle следующий репозиторий:

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

Добавьте в build.gradle вашего модуля следующую зависимость:

dependencies {
    implementation 'com.github.zerobranch:android-remote-debugger:1.0.0'
}

Итог

Android Remote Debugger:


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

GitHub

Подробные инструкции по работе и подключению библиотеки можно найти на GitHub

Let's block ads! (Why?)

Telegram в обновленной версии развил функцию геочатов до соцсети знакомств

image

Telegram выпустил очередное обновление. Оно включает новую версию функции «Люди рядом», которая позволяет находить тех, кто находится в радиусе 100 м — 6 км. Теперь ее можно использовать для знакомств.

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

Для настройки функции нужно зайти в «Контакты» в Telegram, нажать на надпись «Найти людей рядом» и активировать опцию «Показать меня».

imageimageimage

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

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



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

image

Наконец, в мессенджере ввели новые анимированные смайлы.

image

Функция «Люди рядом» появилась в Telegram в июне 2019 года. Она позволяла поделиться контактными данными с пользователями поблизости, а также присоединиться к местным групповым чатам (геочатам).

Этой функцией широко пользовались участники протестов в Гонконге. Однако вскоре выяснилось, что геочаты позволяли полицейским вычислять номера пользователей мессенджера, даже если те скрывали его в настройках. Они генерировали контакт-лист с тысячами телефонных номеров, добавлялись в группу протестующих, и после этого Telegram сообщал, что некоторые пользователи из контакт-листа уже есть в группе. Мессенджер тогда заявил, что это не баг, а фича. Однако впоследствии Telegram все же добавил в интерфейс опцию PrivacyPhoneNumberSettings.CustomDisabledHelp со следующим описанием: Users who add your number to their contacts will see it on Telegram only if they are your contacts («При добавлении вашего номера в свои контакты пользователь увидит вас в Telegram только в том случае, если он присутствует в вашей телефонной книге»).

См. также: «В Telegram обновили функцию опросов и запустили Quiz Bot

Let's block ads! (Why?)

Чтение на выходные: 10 материалов про аудиогаджеты — от советских автомагнитол до вилки с шумоподавлением

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


Фото DL24 / PD


  • Краткая история аудиосистем в советских автомобилях. Как развивались и менялись автомобильные магнитолы — от середины 30-х годов до конца 80-х. Шестиконтурные и пятиламповые для советских лимузинов, серийные штатные «А-8М» в «Москвичах», радиоприёмники от легендарного завода Radiotehnika с пультом управления и возможностью подключить кассетную магнитофонную приставку. Статья особенно увлечёт любителей ретро — «ЗИСы», «ЗИЛы», «Волги», «Москвичи» и «Запорожцы» — говорим об этом всем.

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

  • «Между винилом и кассетой»: история тефифона. Этот редкий проигрыватель схож с кассетным, но по способу воспроизведения стоит рядом с винилом — звук снимается с помощью иглы, но носитель — картридж с лентой. Как это часто бывает, сначала тефифон приглянулся военным для записи переговоров, а потом вышел в массовое производство — сначала в Германии, а затем и за её пределами. Но все-таки он остался далеко в прошлом. Рассказываем, почему.


Фото Bobo11 / CC BY-SA 3.0
  • «Звук на проволоке»: история телеграфона. Продолжение цикла материалов про необычные и редкие аудиогаджеты прошлого. Телеграфон появился в 1898 году, но лишь спустя почти 50 лет обрёл спрос. Изначально изобретение планировали использовать в качестве автоответчика, но в дело вмешались монополисты, и телеграфон стал диктофоном (к слову, тоже не слишком востребованным). О том, как выглядело и как работало первое устройство для магнитной звукозаписи, в каких еще сферах его использовали и что записывали — в нашей статье.

  • Краткая история вариофона и «рисованного звука». Говорим о появлении синтезированного звука, вдохновлённого «акустическими узорами» на плёнке. Как при помощи вырезанных из бумаги фигур воспроизвести песню «Маруся отравилась», какие изобретения в сфере синтеза звука подарила миру лаборатория «Мультзвук», и что в итоге произошло с этой технологией.

  • Почему аудиокассеты снова считают модным форматом. За последние пару лет продажи кассет выросли на 30% — и это в эпоху стриминга и Spotify! Более того, наступил дефицит кассетной плёнки. Как культура lo-fi повлияла на рост продаж, зачем старлорду из «Стражей галактики» аудиокассеты, и при чём тут миллениалы — статья о знакомой многим теме.

  • Краткая история катушечных магнитофонов. Эти устройства многим знакомы лишь по сцене из фильма «Иван Васильевич меняет профессию», в которой герой Яковлева слушает Высоцкого. А между тем, у катушечного магнитофона большая история — она берет начало в 1878 году. Говорим об эволюции устройства, используемых технологиях, популярных советских моделях (не забыли и про «магнитиздат») и о том, какую роль катушечные магнитофоны играют в наши дни.


Фото Andshel / CC
  • «Не взлетели»: 6 необычных аудиогаджетов. Бесполезных вещей пост — о том, как желание выделиться приводит к созданию абсурдных устройств. Динамик для отправки эмодзи, вилка с шумоподавлением (WAT?), медиашар и динамик-глаз терминатора Т-800.



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

Let's block ads! (Why?)

[recovery mode] Tesla выпустит новых акций на $2 млрд

Изображение: Pexels

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

Зачем Tesla допэмиссия


Не так давно гендиректор Tesla Илон Маск заявлял о том, что у компании нет планов по привлечению капитала. Выпуск акций позволит компании получить деньги на укрепление собственных активов.

К примеру, Tesla планирует начать сборку электромобилей на своем немецком заводе неподалеку от Берлина к 2021 году. Это позволит стать ближе к европейским покупателям. Также достраивается завод в Шанхае, ведутся работы по созданию сети зарядных станций в Китае. Также в компании планируют сосредоточиться на повышении мощности аккумуляторов и снижении затрат на их производство.

При этом, максимальная стоимость размещения акций может возрасти до $2,3 млрд. Это произойдет в том случае, если андеррайтеры процесса Goldman Sachs и Morgan Stanley реализуют свой опцион на покупку акций на дополнительные $300.

Кто будет покупать акции Tesla


В дополнительном размещении акций примет участие сам Илон Маск – гендиректор компании купит ценных бумаг на $10 млн. Также акции на сумму до миллиона долларов планирует купить член правления, бизнесмен Ларри Эллисон – бизнесмен стал примером того, сколько можно было заработать на росте акций автопроизводителя.

Купить акции различных американских компаний из России можно без необходимости открывать отдельный брокерский счет у зарубежных брокеров. С помощью рынка иностранных ценных бумаг Санкт-Петербургской биржи инвесторы могут покупать 500 ликвидных акций ведущих компаний всех секторов мировой экономики, в том числе все акции индекса S&P 500.

Чтобы совершать операции с такими акциями вам понадобится брокерский счет – открыть его можно онлайн.

Читайте обзоры, аналитику рынков и инвестидеи в Telegram-канале ITI Capital

Let's block ads! (Why?)

Ламповая катушка Теслы

Хомяки приветствуют вас, друзья.

Сегодняшний пост будет посвящен высокому напряжению. Ламповый трансформатор Тесла является самой тихой конструкцией из всех существующих вариантов. Тут, в качестве генератора высокочастотных колебаний используется мощный пентод ГК-71, благодаря которому можно получать красивые, достаточно длинные разряды в воздухе. В ходе данной работы рассмотрим основные элементы конструкции, узнаем секреты по настройки схемы и визуализируем сигнал с высоковольтной обмотки на экран советского осциллографа. Дальнейшая работа будет заключаться в компактном размещении всех элементов в одном корпусе. В общем всё как вы любите. Простота, надежность и небольшая стоимость делает данную катушку доступной каждому, кто захочет её собрать.

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

ГК-71 выбран из-за эстетической красоты и небольшой стоимости. Кто не обратил внимания, анод в этой вакуумированной пробирке полностью состоит из графита, хорошая реализация для рассеивания больших мощностей, по паспортным данным эта цифра составляет 250 Вт. Номинальное анодное напряжение составляет 1.5 киловольта. Максимальная частота 20 мГц.

Данный экземпляр был выпущен в 1981 году. Достался новым прямо с коробки. Непрерывное время работы по документам, составляет 1000 часов. Это примерно 42 дня. В год, на постоянно работающем устройстве, необходимо сменить 8 таких товарищей. По некоторым подсчётам, выпущенных в свое время Ламп ГК-71 хватит еще минимум лет на 200.

Накал — это та часть которая вдыхает жизнь в любую радиолампу. Напряжение для пентода ГК-71 составляет 20 вольт, но ток при этом должен быть не меньше 3.5 ампер.В общем накал жрет 70 Вт. На рынке за символическую сумму был приобретен отечественный трансформатор ТН54-220-50. При правильном подключении обмоток с него можно получить 85 Вт без каких-либо финансовых затрат.

Следующий элемент — это высоковольтный трансформатор от микроволновки, буржуи называют его МОТ. Напряжение на его выходе составляет 2 киловольта, ток порядка 1 ампера. Довольно мощная и опасная вещь, может отправить вас на встречу к создателю, потому не стоит увлекаться.

Дальше идёт краткий перечень элементов, необходимых для сборки конструкции:
2 масляных конденсатора от той же микроволновки, напряжение 2.1 кВ, емкость 0.95 мФ. Диодная сборка HYR-1x, её максимально допустимое напряжение 12 кВ, ток 500 мА, по паспорту способен выдержать импульсный ток до 30 ампер. Настоящий зверь в своем роде. Резисторы типа ПЭВ-на 10-20 Вт, можно использовать любые другие аналоги буржуйского производства.

Резонансный высокочастотный конденсатор типа КВИ-3, напряжение может варьироваться от 5 до 20 кВ, для настройки было закуплено несколько таких товарищей с разным номиналом ёмкости на борту. Для намотки индуктора был приобретен многожильный медный провод типа ПВС, сечение 1.5 квадрата. Длина порядка 16 метров. Катушка связи имеет другой цвет и длину 10 метров. Все провода взяты по длине с запасом.

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

Теперь вторичная высоковольтная обмотка, она же «резонатор». Намотка этой детали требует много времени и терпения. Тут использован медный лакированный провод толщиной 0.2 мм, мотается виток к витку на картонной основе от пищевой пленки. Диаметр трубы 55 мм. Высота намотки получилась 35 см. Витки при этом не должны пересекаться и накладываться друг на друга.

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

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

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

Теперь про индуктор. Сейчас мы точно не знаем сколько нужно витков, мотаем 40, при настройке его всё равно придётся отматывать в меньшую сторону для поиска резонанса. Обмотка обратной связи мотается в одну сторону с индуктором. Количество витков в два раза меньше, то есть 20. Такое соотношение встречается во многих ламповых катушках Тесла.

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

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

Теперь время подсоединить провода к накальному трансформатору, и посмотреть всё ли работает. Подаем питание и наблюдаем за показаниями амперметра. 3 ампера, как и паспорт предписывал. По мере прогрева, потребление тока незначительно падает. Камера увы не смогла передать всей красоты раскаленных ниточек внутри этого стеклянного баклажана. Здоровенное лампище… Вот же ж умели делать!

Вся схема устройства довольно простая и выглядит примерно так: переменное высокое напряжение с мота выпрямляется через диод и заряжает конденсаторы от микроволновки, соединены они последовательно для увеличения рабочего напряжения. В этом случае суммарная ёмкость выходит пол микрофарада. Колебательный контур индуктора подключён к аноду лампы через дроссель, состоящий из 10 витков. Все управляющие сетки лампы ГК71 соединены вместе, с этого момента пентод превращается в триод. Схема автогенератора начинает работать при очень малых напряжениях на входе мота. Конденсатор в 2.2 нФ на выходе накального трансформатора служит для фильтрации наводок и высокочастотных выбросов, хотя первое = второе, второе = первое, как-то так. Обращаем внимание на подключение обмоток в первичном контуре. Точка — это нижний вывод обмотки.

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

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

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

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

На кончике отвертки, что служит терминалом для выхода молний появился небольшой стример. По мере повышения напряжения размер его растет, но разряды какие-то тонкие и не внушительные. Изменим положение обмотки связи, сместим её чуть вниз. Смотрим что поменялось в работе. Постепенно повышаем напряжение… видим что разряды стали более уверенными, толще, длинней и ярче. Звук довольно внушительный, похож на глухой рёв спортивного автомобиля.

Поиск резонанса осуществлялся либо отматыванием витков, либо подбором резонансного конденсатора. Начал отматывать витки. Увеличение мощности разрядов говорит от том, что мы на правильном пути. Разряды мощней, толще, длинней, самое интересное произошло тогда, когда начал увеличивать емкость резонансного конденсатора. Разряд увеличился, и на глазах начал уменьшатся. Запахло горелой бумагой.

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

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

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

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

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

Для окончательной и более правильной работы, автогенератор необходимо настроить на осциллографе. Настраивать систему будем по максимальной амплитуде сигнала. Щуп осциллографа подключать напрямую к схеме не будем, для настройки разместим его на уровне тора и будем смотреть эфирный сигнал. Вся наводка, форма, частота и амплитуда сигнала отобразится на экране осциллографа. В данной схеме, этой информации для настройки будет более чем достаточно. Включаем накал. Подаем анодное напряжение. Регулируем напряжение автотрансформатором… но почему-то ничего не происходит… разбираемся что не так!? Ага, забыли подключить заземление, бывает, прикручиваем его на свое место и повторяем процедуру включения. Крутим ручку и сигнал оживает. Это наш индикатор в мире настройки. Входное напряжение на моте всего 50 вольт, отлично, нам сейчас разряды в воздухе не нужны.

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

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

Настройка резонанса с помощью конденсаторов. У этих образцов разная емкость, как выбрать нужную? Всё просто, поочередно соединяем конденсаторы параллельно индуктору и смотрим на сигнал. Нужно быть при этом осторожным, тут развиваются большие токи, которые могут нанести фаталити вашей руке. Дохлые электронщики никому не нужны. Если емкость будет слишком большая, она попросту погасит всю амплитуду сигнала.

В начале выпуска я обещал рассказать зачем нужны такие массивные контакты на конденсаторах. Во время работы, особенно на резонансе, в индукторе развиваются огромные токи, порядка нескольких сотен ампер, если такой ток пойдет через тонкие ножки обычного конденсатора, они попросту перегорят как перемычка в предохранителе. В данной схеме хорошо прижился конденсатор КВИ3 на 1500 пФ 10 кВ. Год выпуска 1978, раритет в своем роде, старше меня лет на 10.

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

Сейчас, переключатель времени деления на осциллографе стоит в положении 0.5 мкс. Это означает, что одна клетка на шкале экрана равна 0.5 мкс. Один период синусоиды занимает 5 клеток, следовательно 5 умножаем на 0.5 равно 2.5 мкс. Частота находится по формуле: 1 деленная на период. Считаем. 1/2.5 мкс равняется 0.4 мГц, что равняется 400 кГц. Отсюда вывод, резонансная частота настроенной катушки Тесла, ровняется 400 кГц.

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

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

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

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

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

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

Данная конструкция проста в повторении, и элементарна в настройке. В ней нет дорогих деталей, хотя цена — дело относительное, стоимость всех элементов составляет примерно 65 баксов не включая ЛАТР для регулировки входного напряжения в анодной цепи.

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

Для справки. Съемка сегодняшнего выпуска вместе с пост обработкой, написанием текста и прочими процессами заняла 2 месяца. Это можно назвать быстрым выпуском. В комментариях вы часто пишите чтобы мы снимали материал в сфере физики и электроники, сейчас так и происходит, но тут есть обратная сторона медали, время. Теперь выпуски будут выходить реже чем обычно, надеюсь вы всё понимаете.

Как гласит народная мудрость: работа и труд — всё перетрут.



Полное видео проекта на YouTube

Let's block ads! (Why?)

[Перевод] Бесконечный цикл, которого не было: история бага Святого Грааля

Когда-то давным-давно жила игра для GBA под названием Hello Kitty Collection: Miracle Fashion Maker. Это была милая игра, основанная на знаменитой франшизе Sanrio Hello Kitty и разработанная компанией Imagineer. Но под маской кажущегося невинным названия скрывалась коварная проблема. По каким-то причинам эта простая игра не запускалась ни на одном эмуляторе GBA. Но одного этого было бы недостаточно, чтобы назвать проблему багом Святого Грааля. Как и все баги Святого Грааля, сам этот баг совершенно сбивал с толку. Объяснение было простым: на каком-то этапе последовательности запуска игры она попадала в цикл, из которого никогда не выходила, ожидая чтения определённого значения из памяти, которой не сущесвтует. Хотя подобные баги есть во многих играх, например, в интро популярной The Legend of Zelda: The Minish Cap, они полагаются на особое поведение, вызываемое чтением недействительных адресов памяти. Но этот цикл, казалось, нарушал подобное поведение. Тем не менее, на реальном оборудовании всё-таки игра работала. Более того, точно такой же баг возникал и при загрузке сохранения в Sonic Pinball Party после холодной перезагрузки. Могло ли ожидание этих недействительных адресов памяти быть каким-то образом ошибочным? Но если да, то как?

Но ведь это незаконно, правда?


Постойте-ка — если вы пытаетесь получить доступ к недействительной памяти, то игра просто должна вылететь, правильно? Должна произойти неразрешённая операция, segfault или какая-то ещё ошибка. Верно?

Ну… Как бы да. Но не совсем. По крайней мере, не на GBA.

В архитектуре процессоров ARM, которые использовались в GBA, это ошибочное состояние называется data abort и возникает только тогда, когда вы пытаетесь получить доступ к памяти, которой диспетчер памяти не назначил разрешение на считывание1. Когда происходит data abort, процессор завершает выполнение того, что делал, и переходит к вектору исключений, назначенному исключениям data abort. Затем операционная система может выбрать одно из решений: убить текущий процесс, назначить памяти page fault, позволить процессу справляться с ситуацией, как JIT некоторых эмуляторов делают это с «fastmem», или совершить какие-то другие действия.

Как же GBA обрабатывает data abort? Запись вектора исключений для data abort находится в загрузочном ROM консоли GBA (или как его ещё называют, в BIOS). Если GBA сталкивается с data abort, то она пытается перейти к обработчику DACS2, если он существует, а в противном случае происходит блокировка. Ни в одной коммерческой игре нет обработчиков DACS. Так почему же эта игра не зависает? Всё очень просто — GBA никогда не генерирует data abort. У неё нет диспетчера памяти (MMU) (или даже блока защиты памяти, как в DS), поэтому она просто продолжает работу и считывает недействительную память.

На сцену выходит шина памяти



Что вообще такое — недействительная память? Как она выглядит? В этом-то и заключается основная загвоздка. Это сложная ситуация: то, что считывает код, сильно зависит от того, что недавно делал ЦП, или, если точнее, что недавно делала шина памяти. Если объяснять вкратце, то при доступе к недействительной памяти ЦП считывает то, что было последним в шине памяти. Чтобы разобраться, что из этого следует, нужно немного узнать о шине памяти и о том, как она работает.

Шина памяти — это часть электронной схемы, соединяющая ЦП со всеми компонентами памяти платформы. На GBA к шине памяти подключено несколько устройств: рабочая ОЗУ, видеопамять и шина картриджа. Когда ЦП пытается получить доступ к памяти, он сообщает шине памяти, к какому адресу ему нужен доступ, после чего задействуется компонент, соответствующий этому адресу. Затем компонент помещает значение по этому адресу в шину, для чего может потребоваться несколько циклов3, а затем ЦП наконец может считать значение из шины. В случае GBA, если с адресом не связано никакое оборудование, то в шину не записывается значение, и ЦП считывает любое значение, помещённое в шину последним. Ситуация может различным образом варьироваться, например, если считывание было 16-битным, а ЦП пытается выполнить 32-битное считывание, но в целом это всегда будет значение из шины. Разработчики называют такую особенность «открытой шиной». Ранее я писал, как она влияет на другие игры.

Ну, вроде всё выглядит не так уж плохо… Верно?


То есть можно просто кэшировать последний доступ к памяти? А затем снова вернуть его? В общем случае, такой подход сработает, но существуют определённые трудности. Во-первых, нужно сделать так, чтобы все операции доступа к памяти находились в правильном порядке. Это сложнее, чем кажется, ведь ЦП выполняет доступы к памяти каждой инструкцией для получения следующей инструкции в конвейере. И на самом деле, в общем случае*, задержавшаяся в шине память — это последняя инструкция, которая была получена. Это упрощает процесс, ведь нужно получать только это последнее, предварительно выбранное значение. Но поскольку последнее предварительно выбранное значение зависит только от того, откуда мы в настоящий момент осуществляем выполнение в памяти, оно всегда должно быть одинаковым. Даже если получаемый адрес изменяется, пока он недействителен, вы всегда будете получать одинаковую память.

Эээ… Стоп. Но этот цикл существует, и из него нельзя выйти, если это значение является предварительно выбранным. Так что же происходит? Если он постоянно получает следующую инструкцию, то что случается между этими операциями? Я пытался запускать подобные бесконечные циклы на тестовых ROM-ах, чтобы проверить может ли, например, значение портиться. Это определённо может происходить, если значение недавно не обновлялось, но значение обновляется в каждой инструкции, поэтому у него нет времени испортиться. Мои тесты никогда не покидали цикла. Я делал что-то иначе, чем в этих играх, хотя в точности воссоздал цикл. Что же я делал не так?

Pokémon Emerald и ACE, возникающее только на железе


Перенесёмся вперед во времени, в январь 2020 года. Отчёту о баге в Sonic Pinball Party на этот момент исполнилось примерно три с половиной года. В других эмуляторах он был известен многие годы. У меня закончились рабочие теории. В конце этого месяца пользователь под ником merrp присоединился к Discord-сообществу эмулятора mGBA и сообщил, что в Pokémon Emerald есть новый глитч исполнения произвольного кода (arbitrary code execution, ACE), который работает только на железе. Более того, этот глитч скорее всего будет использоваться спидраннерами, которые могут захотеть попрактиковаться в эмуляторе. Очевидно, что этот баг стал привлекательной мишенью для исправления ошибки, хотя лучше бы я узнал о нём до версии 0.8.0. Я начал исследовать глитч и подтвердил наблюдение merrp о том, что он работает только на железе. Во всех испробованных мной эмуляторах игра зависала с чёрным экраном. Но merrp сообщил мне, что она зависает на чтении из недействительной памяти в цикле, и я понял, что скорее всего не смогу в ближайшее время исправить ошибку. Это опять тот же баг.

На этот раз изучение зациклившейся функции дало мне преимущество. Благодаря проекту декомпиляции pokeemerald я мог легко внести целевые изменения в функцию, чтобы попробовать разобраться, как ей удаётся выбраться из цикла. Упрощённая версия этого цикла выглядит примерно так:

uint16_t type = /* ... */;
for (int32_t i = 0; table[type][i] != 0xFFFF; ++i) {
        uint16_t value = table[type][i] & 0xFE00;
        if (value > 0x7E00) {
                break;
        }
        /* ... */
}

Цикл выполняет довольно простую задачу. Существует двухмерная таблица значений. В каждой строке этой таблицы столбца type цикл сначала пытается определить, является ли значение определённым значением «sentinel». Если это так, цикл завершается. В противном случае он применяет к значению маску и проверяет, больше ли оно проверяемого значения. В противном случае он спускается ниже по циклу. В конкретном случае возникновения глитча значение type выходит за границы таблицы, что приводит к появлению недействительного указателя. Это означает, что при попытке доступа к i-тому элементу этого несуществующего столбца мы всегда будем выполнять доступ к недействительной памяти. Хотя смещение таблицы с каждой итерацией цикла увеличивается, прежде чем вернуться к действительной памяти, ему может понадобиться сотни миллионов повторений. Поэтому очевидно, что он этого не делает. Так как же программа выбирается из цикла?

Чтобы исследовать это я изменил цикл и посмотрел, что произойдёт, если я просто мгновенно вырвусь из цикла. Всё оказалось достаточно просто: в этот момент ACE сработало и на железе и в эмуляторе, и ничего не зависало. Поэтому вместо этого я попытался задать в качестве цвета экрана значение, которое программа считывает, когда выходит из цикла и зависает, чтобы цвет не менялся. Я повторно скомпилировал код и запустил его на реальной GBA. Спустя несколько секунд зависания на чёрном экране он стал великолепного синего оттенка.


ОЧЕНЬ СИНЕГО

Но эмулятор всё равно зависал на чёрном экране. Какое же значение он будет считывать, если считывал ранее полученное значение? Вместо этого он стал темновато-бирюзовым.


Фу

То есть программа, прежде чем ей удалось выбраться из цикла, совершенно точно по крайней мере один раз прошла его. Также оказалось, что время, необходимое на побег из цикла на железе, варьируется. Обычно это занимало от 2 до 30 секунд. Что же происходит?

Новая рабочая теория


Затем я заметил разницу между моим тестовым ROM и Pokémon Emerald при зависании. В Pokémon играла музыка. В Sonic Pinball Party тоже играла музыка. В Hello Kitty музыка не играла, но это дало мне идею. Что происходит, если возникает прерывание между предварительной выборкой и загрузкой данных? Начинает ли программа предварительную выборку вектора прерывания перед доступом к недействительной памяти? Я быстренько создал макет этой ситуации в mGBA, включил прерывания в тестовом ROM, и он конечно же выбрался из цикла. Затем я попробовал тот же тестовый ROM на железе и… он не выбрался из цикла. И так появилась теория. В конечном итоге я кое-что осознал. Я уверен, что выше вы заметили пометку-звёздочку, так что да, между предварительной выборкой и доступом к памяти может произойти одно событие, но только если между предварительной выборкой и доступом к недействительной памяти шине памяти посылает запрос не ЦП, а что-то другое.

Я говорил, что шина памяти управляется ЦП. По большей части это справедливо, но есть и другое важное оборудование, тоже имеющее доступ к шине памяти в обход процессора. Этот процесс называется прямым доступом к памяти (direct memory access). Я рассказывал о DMA в предыдущей статье, поэтому сейчас не буду вдаваться в принципы его работы. Если перечитаете статью, то можете заметить, что я сказал, что главный ЦП приостанавливает работу, пока работает DMA. Это означает, что пока работает DMA, значение в шине теперь будет последним доступом к памяти DMA. В основном это важно, если DMA выходит за пределы действительной памяти в недействительную область; при этом он дублирует последнее хорошее значение.

Уже давно известно, что если загрузить недействительную память в DMA, то вы получите последнее значение DMA, но я давно реализовал это в mGBA и уже забыл об этом. Когда я увидел это в коде доступа к недействительной памяти при изучении бага, в голове что-то щёлкнуло. Что, если значение DMA задержится в шине на одну инструкцию? Если первая инструкция после DMA завершает загрузку недействительной памяти до того, как получит следующее значение, то в теории это должно привести к повторной загрузке значения DMA. Более того, воспроизведение музыки в GBA обычно задействует DMA для передачи аудиоданных на выход. Для правильной реализации этого потребуется потактово точный эмулятор, который может блокировать ЦП посередине выполнения инструкции, между началом инструкции и доступом к памяти, а эмуляция консоли GBA в эмуляторе mGBA не потактово точная. И это мне кое о чём напоминает. К счастью, мне удалось обойти эту проблему. Решение неидеально, но я теперь могу сравнивать ожидаемый ЦП адрес для инструкции после DMA с текущим адресом ЦП при недействительной загрузке и использовать для этого одного адреса вместо предварительно выбранного значения значение DMA.

Долгожданное решение


Я включил операции DMA для H-blank в тестовом ROM и синхронизировал их с V-blank, чтобы тайминги были стабильными, запустил его на железе, и… на этот раз всё заработало! Тестовый ROM постоянно выходил из цикла после одинакового количества итераций, когда из шины считывалось значение DMA. Я оказался прав! Для правильной реализации этого в mGBA потребовалось несколько попыток, но теперь программа выходит из цикла с теми же результатами, что и на железе. Я наконец получил на mGBA оттенок синего. Hello Kitty загрузилась. Сохранение в Sonic Pinball Party заработало.

Я это сделал.

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

Теперь, когда решение найдено, его можно реализовать и в других эмуляторах GBA, положив конец этому багу. Баг будет исправлен в mGBA 0.9.0, который, как я надеюсь, выйдет в этом году, и уже исправлен в тестовых сборках. Вы наконец можете играть в Hello Kitty Collection: Miracle Fashion Maker. Если, конечно, пожелаете, не мне вас судить.

image

  1. В случае попытки выполнения памяти, которой не назначены разрешения на выполнение, это называется prefetch abort.
  2. DACS (сокращение от Debugging and Communication System) — это часть комплекта разработки GBA.
  3. Эти циклы простаивания во время чтения из шины иногда называют wait states.

Let's block ads! (Why?)

Ким Дотком: пойманный в сеть, самый разыскиваемый человек онлайн. Часть 4

Для одних Ким Дотком, основатель скандально известного файлообменника «MegaUpload», преступник и интернет-пират, для других — несгибаемый борец за неприкосновенность персональных данных. 12 марта 2017 года состоялась мировая премьера документальной киноленты, в которой приведены интервью с политиками, журналистами и музыкантами, знающими Кима «со всех сторон». Новозеландский режиссер Энни Голдсон с помощью видео из личных архивов рассказывает о сути судебных баталий Доткома с правительством США и другими государственными структурами, провозгласившими бой мировому интернет-пиратству.

В юности Ким Дотком считал США оплотом мировой демократии, страной, правительство которой самоотверженно борется за торжество справедливости во всем мире. Побывав в ролях хакера, малолетнего преступника и консультанта по компьютерной безопасности, к 30-ти годам Ким решает заняться бизнесом и создает крупнейший файлообменник «MegaUpload», число пользователей которого достигло 160 млн. человек. Практически до самого закрытия сайта в 2012 году он занимал 13 место в рейтинге самых посещаемых интернет-ресурсов. За 7 лет существования «MegaUpload» Ким заработал более сотни миллионов долларов, но в результате судебных разбирательств превратился в банкрота. Инициатором судебного преследования выступили США, обвинившие Доткома в размещении пиратского контента и нарушении авторских прав, что будто бы принесло правообладателям ущерб в размере 500 млн. долларов.

До сих пор Киму так и не удалось оправиться от удара и поправить финансовые дела, так как все средства он тратит на услуги адвокатов и создание новых инновационных проектов, таких как платформа «K.im» — так называемый «магазин файлов», совершающий платежи на основе криптовалюты.

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

Ким Дотком: пойманный в сеть, самый разыскиваемый человек онлайн. Часть 1
Ким Дотком: пойманный в сеть, самый разыскиваемый человек онлайн. Часть 2
Ким Дотком: пойманный в сеть, самый разыскиваемый человек онлайн. Часть 3

Дотком и политика


19 января 2012 года Ким размещает на YouTube клип своей песни «Я готов изменить твою жизнь» с такими словами: «Я покажу тебе, что могу изменить твою жизнь, я смогу поменять твое мышление, я докажу, что я лучший для того, чтобы сражаться».

C приближением выборов 2014 года стало понятно, что Интернет-партия сама по себе не добьется успеха, поэтому Ким принялся искать союзников. С ним согласилась сотрудничать партия MANA. Она была очень активной и принадлежала к «левому крылу» политических сил. Дотком сообщил, что выложил неслыханную сумму в 4 млн. долларов за сделку с этой партией. Премьер-министр Джон Ки сразу же заявил, что Ким финансирует политическую партию, чтобы препятствовать собственной экстрадиции. Для самой же партии MANA была важна возможность представить своему электорату нового политического партнера.

Газеты запестрели заголовками: «Почему партия Доткома полезна для Новой Зеландии», «Защитим свое будущее с Интернет-партией», «Новый трюк Доткома – растрясти новозеландских политиков», «Чем альянс Интернет – МАНА нарушает правила игры». Обе партии и сами поверили в серьезность своей победы на выборах, а люди задумались, насколько важную роль альянс сможет сыграть в парламенте. СМИ сообщали о каждом их шаге, однако MANA не смогла использовать эту популярность в свою пользу. Презентации альянса Internet MANA включали в себя аспекты, которые, казалось, были лично нацелены против Джона Ки.

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

Момент истины


За 5 дней до выборов, 15 сентября 2014 года, журналист Дэвид Фишер получил от Кима письмо, в котором говорилось, что все, что Дотком предполагал о заговоре против него, является правдой — Новая Зеландия подала его США «на блюдечке». У Доткома были фрагменты электронной переписки члена правительства и представителя компании Warner Bros: «Джон Ки сказал мне, что они выдадут Доткому вид на жительство несмотря на криминальное прошлое. Мы окажем ему «королевский прием», а затем он получит билет до Вирджинии в одну сторону».

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

«Сегодня страна Длинного белого облака приветствует весь мир!» — спикер конференции The Moment of Truth представляет американского адвоката и писателя Гленна Гринвальда, сидящего за столом справа от Кина, и Джулиана Ассанжа, участвующего в мероприятии по видеосвязи. Гринвальд широко известен тем, что в 2013 году опубликовал серию статей о глобальной слежке на основе материалов Эдварда Сноудена.

«Добро пожаловать, Эдвард Сноуден!» — на экране появляется улыбающееся лицо бывшего сотрудника ЦРУ и АНБ, предавшего СМИ кучу материалов о незаконной слежке США за гражданами по всему миру. Сноуден также участвует в «Моменте истины» по видеосвязи. «Америка ведет настоящую войну за контроль над интернетом. Они думают, что таких организаций, как WikiLeaks, быть не должно, что государственный шпионаж должен оставаться в секрете».

США уверены, что когда дело касается авторских прав, весь мир должен перенять их опыт в этом вопросе. Дэвид Фишер вспоминает: «То, что мы увидели там, на мероприятии в ратуше, называлось «сопротивлением».

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

Гленн Гринвальд: «Это именно то массовое наблюдение, которое премьер-министр Ки не только рьяно отрицал, но и пообещал уйти в отставку, если будет доказано, что его правительство в этом участвовало».

Джулиан Ассанж: «Разведслужбы по определению созданы для того, чтобы вести свою деятельность вне закона, поэтому им нельзя доверять».

Однако не имело значения, что говорили Ассанж и Сноуден. О Доткоме можно было сказать: «А король-то голый!». Он не представил ни единого доказательства, которыми так долго обещал поделиться, и это стало для Доткома и всех, кто поддерживал его до этого момента, большой проблемой.

На пресс-конференции после мероприятия Киму задают вопрос: «Люди ждали того, что Дотком придет в парламент и докажет, как обещал, что Джон Ки лжец. Почему вы этого не сделали?»
Ким отвечает: «Я доказал это, точно!»!

Репортер: «Нет, то, что он знал о вас до рейда – это не доказательство заговора!»
Ким: «Нет, послушайте, дайте же мне ответить! После того, что вы сегодня узнали, у вас появилась моральная ответственность донести ту информацию, которой с вами поделился Гленн Гринвальд и Эдвард Сноуден, до премьер-министра и его кабинета, и призвать их к ответственности!».

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

Репортер: «Хорошо, приведем»
Ким: «Да, Патрик, приведите, потому что в прошлом вы уже подводили новозеландцев! Я не понимаю, как вы позволяете премьер-министру выкручиваться снова и снова! Он лжет и хитрит, но вам все равно нужно выполнять свою работу, нам всем нужно продолжать делать свое дело».
Репортер: «Вот я и делаю свою работу, спрашивая вас: Ким Дотком, что сегодня пошло не так, почему вы не предъявили свои доказательства»?
Ким: «Думаю, на сегодня хватит. Благодарю вас»!

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

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

Очередное поражение


Выборы в парламент Новой Зеландии состоялись 20 сентября 2014 года. Это было очень серьезная, временами очень грязная политическая кампания. Вначале люди оказали Киму и его партии серьезную поддержку, потому что помнили, что он был жертвой спецслужб США, правительства и полиции Новой Зеландии. Внезапно его стали видеть более агрессивным игроком, и теперь уже аутсайдером стал Джон Ки. Однако в момент подсчета голосов выяснилось, что у партии Internet-MANA возникли проблемы, скорее всего из-за того, что Дотком так и не решился или действительно не смог нанести премьеру «добивающий удар». Альянс не смог пройти в парламент, и миллионы Доткома оказались смытыми в унитаз.

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

Дотком их перебивает: «Нет, я должен был это сказать! Простите меня! Я беру на себя полную ответственность на наше сегодняшнее поражение, потому что бренд «Ким Дотком» оказался «ядовитым» для того, чего мы пытались добиться. Раньше я этого не видел, но в последние пару недель это стало для меня очевидным. Я говорю всем вам, кто работал со мной эти дни, огромное спасибо!». Ким уходит, и многие из присутствующих не могут сдержать слез. Да и сам Ким, выступая, казалось, вот-вот расплачется. Видимо, СМИ таки смогли нанести по нему удар, создав ему во время предвыборной кампании не самый лучший образ. Джон Ки и его правительство остаются еще на 3 года.

На следующий день после выборов с адвокатами Доткома связался Генеральный солиситор Новой Зеландии и спросил, готов ли обвиняемый покинуть страну. В этом случае дело против Кима было бы закрыто, не будет никакой экстрадиции и все останется в прошлом.

Ким говорит съемочной группе: «Нельзя совершить такой рейд, уничтожить семью и бизнес человека, причинить ему столько боли и выйти из воды сухим с каким-то листком бумаги, на котором написано: «Да, я поступил плохо, но вы меня прощаете, спасибо вам за это!» Да пошли они»!

2015: мегапроект и мегасуд


В конце 2014 года Ким Дотком выдвинул идею протянуть по дну Тихого океана оптоволоконный кабель, который бы соединил Новую Зеландию и США. Стоимость проекта оценивалась в 400 миллионов долларов, которых не было ни у Доткома, ни у потенциальных инвесторов. В феврале 2015 эту идею заменил еще более амбициозный проект создания антицензурной сети MegaNet. В своем Twitter Ким написал: «Как бы вам понравился новый интернет, который не смогут контролировать, цензурировать и уничтожать правительства и корпорации? Я над этим работаю».

В середине июня Дотком сообщает изданию TorrnetFreak о том, что сеть будет полностью децентрализована и анонимна. Известно, что пользователи мобильных телефонов должны играть в структуре сети ключевую роль, хотя с других устройств MegaNet тоже будет доступна. «MegaNet, это уникальный протокол кристаллизации и воссоздания файлов, использующий блокчейны.
Эта технология сможет поддерживать целые сайты, сделав их полностью иммунными к хакерским атакам и DDoS. Поначалу MegaNet будет использовать существующий интернет, как костыль, но лет через 10 она заработает сама, исключительно на смартфонах. Будем надеяться, что минимум 500 млн. пользователей смогут поддержать работу сети. Это будет сеть, созданная людьми для людей. Не подконтрольная правительствам и корпорациям, MegaNet будет мощным инструментом, способным оградить нашу частную жизнь и свободу, а еще она станет моим наследием».

Дотком назначает дату начала сбора средств на реализацию своего проекта на основе краудфандинга – 20 января 2016, в день четвертой годовщины новозеландского рейда. Тогда же Ким обещает обнародовать все подробности нового мегапроекта.

В сентябре СМИ сообщили, что после переноса на 3 с половиной года, в декабре в Окленде снова начинается слушание дела об экстрадиции Кима Доткома и его команды в США. Судья должен решить, останутся ли эти люди в Новой Зеландии или их отправят туда, где им грозят десятилетние тюремные сроки.

Ведущий адвокат Доткома, Рон Мэнсфилд, считает, что это дело является самым крупным судебным процессом о защите авторских прав, который когда-либо наблюдал мир. Ким говорит репортерам, сопровождающим его на заседание суда, что уверен в своих адвокатах: «Все наши документы просто идеальные! Любой беспристрастный юрист поймет, в чем тут дело».
Судья говорит, что дело Доткома имеет огромную важность, потому что затрагивает вопросы экстрадиции в контексте существующего законодательства Новой Зеландии. Поэтому сначала необходимо доказать, что деятельность Доткома действительно была преступной.

Адвокат Кима заявляет, что деятельность Доткома не является преступлением на основании того, что существует конкретный законодательный акт об авторском праве, который предоставляет защиту и интернет-провайдерам. Предоставление технологии пользователям интернета не накладывает на компании гражданскую или уголовную ответственность. Адвокаты постоянно указывали на одни и те же обстоятельства дела и существующие международные подзаконные акты. В договоре о правовом сотрудничестве США и Новой Зеландии нет ни слова об авторском праве, и опираясь на этот факт, адвокаты рассчитывали выиграть процесс.

В ответ на выступление адвоката судья вызывает королевского прокурора Кристину Гордон, которая говорит следующее: «Нечестность, лежащая в основе деятельности MegaUpload, может быть выражена в простых терминах. Улики указывают на простую схему мошенничества. Это не просто невинный интернет-провайдер, а объемный облачный сервис с незаконным контентом».

Грэг Сандовал говорит: «Кристина Гордон представляет интересы Америки, и я уверен, что наставления она получала из Министерства юстиции США, и в этой своей миссии выложилось до последней капли».

Кристина Гордон продолжает: «Мы располагаем свидетельствами того, как ответчики мыслили (!) и вели себя наедине. У нас есть доступ к их «откровенной коммуникации». Согласно частному заявлению Матиуса Ортманна, обладатели авторских прав поймут, цитирую: «мы не просто пустые трубы для перекачки контента, которыми притворяемся». Другой фигурант дела, Брам ван дер Кольк, говорил: «если бы правообладателя знали масштабы нашего бизнеса, то конечно же попытались этому помешать. Они не подозревают, что каждый месяц мы зарабатываем миллионы. Ортманн говорил ван дер Кольку, цитирую: «мы поступили правильно, мы способствовали мошенничеству долгое время и тем самым увеличивали свой рост».

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

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

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

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

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

Ким Дотком вспоминает: «Я понял, что судья вообще не может разобраться в этом деле. Он не имел понятия ни об интернете, ни об авторских правах. В какой-то момент разбирательств он спросил, не является ли MegaUpload «коровьим хранилищем», спутав «cloud service» и «cow service».

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

Приговор по делу Кима Доткома был оглашен 25 декабря 2015 года. Решение суда звучит так: «Подавляющее количество доказательств, поданных заявителем в материалах дела и его приложениях, устанавливает наличие достаточных данных, указывающих на признаки преступлений у всех обвиняемых по каждому пункту. В связи с этим признано, что все четверо ответчиков подлежат экстрадиции».

Эпилог


Соответчики по делу MegaUpload обжаловали решение окружного суда. В 2017 году Верховный суд постановил, что обвиняемые могут быть экстрадированы за предполагаемое мошенничество, но по законам Новой Зеландии нарушение авторских прав не является уголовным преступлением. Это обстоятельство поднимает вопрос о легальности рейда и арестов 2012 года. Интернет-архив показывает, что MegaUpload не предлагал бонусов за файлы объемом более 100Мб, слишком маленького размера для большинства кинофильмов и сериалов, и таким образом, не подстрекал пользователей загружать контент такого рода. В пользовательском соглашении файлообменника было указано, что пользователь обязан делать запрос авторских прав, чтобы удостовериться в том, что размещаемый контент их не нарушает.

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

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

Шон Галлагер, редактор портала Ars Technica: «Хотя у нас имеется весомая причина предотвратить пиратство, чтобы защитить артистов, живущих за счет продажи продуктов своего творчества, механизмы, используемые для борьбы с распространением нелегального контента одновременно являются механизмами цензуры и притеснения свободы мысли. Это очень скользкая дорожка, опасная вещь».

В финале фильма Ким говорит: «Дело уже не в том, что правильно, сейчас дело в победе любой ценой! Все, что для них важно – это растоптать меня, сломить. Но они нарвались не на того парня, я все равно выиграю этот бой»!

Финальные титры кинофильма «Пойманный в сеть» сообщают, что в настоящее время (март 2017 года) Ким работает над MegaUpload 2.0 и намекнул, что может вернуться в политику. Если его экстрадируют, то Мону с детьми тоже могут выслать из Новой Зеландии.

Премьер-министр Джон Ки внезапно подал в отставку в декабре 2016 года. Как и представители полиции и английской короны, он отказался дать интервью создателям фильма о Доткоме. Судебное разбирательство по поводу дела MegaUpload продолжается.

«Наша песня хороша, начинай сначала»!


20 января 2017 года Апелляционный суд Новой Зеландии оставил в силе решение суда низшей инстанции 2015 года о том, что Ким Дотком и его «сообщники» должны быть выданы Соединенным Штатам для предъявления обвинений в совершении уголовных преступлений, связанных с веб-сайтом Megaupload.

Судья суда первой инстанции Hight Court Мюррей Гилберт постановил, что, хотя он согласен с одним из главных аргументов адвокатов Доткома, что свободное обращение в интернете контента, защищенного авторским правом, не является уголовным преступлением в Новой Зеландии, обвиняемые все равно могут быть экстрадированы на основании других обвинений, выдвинутых истцом.

«Умышленное нарушение авторских прав может быть квалифицировано как нечестное деяние, оно лишает владельца авторских прав того, на что он может иметь право. Следовательно, поведение обвиняемых с точки зрения ст. II.16 представляет собой преступное сговор с целью мошенничества», — заключил судья, сославшись на конкретный раздел договора об экстрадиции между Новой Зеландией и Соединенными Штатами, в котором оговаривается, за какие формальные уголовные обвинения она может быть применена.

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

После оглашения этого решения Дотком написал в своем Twitter, что правила экстрадиции совершенная чушь, потому что «хотя мы выиграли, мы все равно проиграли. Это политическое дело. Это политизированное правосудие. Я говорил, что согласно закону об авторских правах, меня нельзя экстрадировать, и я оказался прав. Что они попробуют теперь? Суд шариата?»
Отвечая в Twitter на вопросы Ars Tachnica, Дотком так прокомментировал решение Мюррея Гилберта: «Мы выиграли, предъявив главный аргумент о том, что нарушение авторских прав в Интернете не является преступлением в Новой Зеландии и поэтому не может рассматриваться как повод для экстрадиции. Судье пришлось с ним согласиться, и у него не осталось места для маневра. Тогда он решил использовать запасной вариант, разрешив нашу выдачу властям США на основе закона о мошенничестве, несмотря на то, что авторское право не является мошенничеством, как постановил Верховный суд США.

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

Дотком не был экстрадирован в США даже через 3 года после ареста только потому, что в соответствии с условиями договора о выдаче преступников 1970 года между Новой Зеландией и Соединенными Штатами, ни одна из стран «не обязана отправлять своих граждан за границу для предъявления им уголовных обвинений, однако исполнительная власть каждой страны имеет право выдавать их, если по своему усмотрению она сочтет это уместным».

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

При этом Ким утверждал, что не зависимо от того, получит ли он гражданство или нет, это все равно не скажется на его уголовном преследовании, «потому что это политическое дело».


Команда MegaUpload после первого суда 2012 года (слева направо): Брам ван дер Кольк, Ким Дотком, Матиас Ортманн и Финн Батато

Дело Кима Доткома до сих пор не закончено. В январе 2020 года исполнило 8 лет с момента злосчастного штурма, поломавшего карьеры и жизненный уклад множества людей. То, что Дотком до сих пор не в США, является свидетельством важного факта: даже в одиночку можно бороться против государственной машины, правда, обладая при этом достаточными финансами. Трудно сказать, что стало бы с Кимом, не имей он возможности оплачивать труд лучших адвокатов. Многих возмущает, что США при рассмотрении дела в суде не стесняются ссылаться на материалы конфиденциального характера – телефонные разговоры, электронные письма, общение по Скайпу, полученные незаконным путем. Как оказалось, спецслужбы плотно следили за Доткомом как минимум с 2009 года, и это никого не смущает. Попытки адвокатов Доткома заявить, что улики добыты ФБР совершенно незаконным путем, отметаются судами всех инстанций благодаря тому, что «деятельность ФБР по определению не всегда носит законный характер, особенно на территории других стран».

Кроме того, жизнь Киму серьезно подпортил Андруса Номм, бывший сотрудник компании MegaUpload. Он заключил сделку о признании вины в США, которая включала дачу показаний против других сотрудников Megaupload. Власти США любят упоминать его показания: «когда я сказал Финну Батато, что большая часть нашего контента украдена, он ответил мне: «Я об этом знаю!».

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

Вторая жена Доткома официально входит в состав команды адвокатов, возглавляемой Роном Мэнсфилдом, и участвует во всех заседаниях суда.

Продолжение будет совсем скоро…

В тему: Иван Лилеквист и Ким Дотком, большое интервью: история Megaupload, экстрадиция в США, свобода, биткоин. Часть 1

Немного рекламы :)


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

Dell R730xd в 2 раза дешевле в дата-центре Equinix Tier IV в Амстердаме? Только у нас 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?)