-
Оригинальная озвучка (1)
Чтобы насладиться продуктом в полной мере (игрой, фильмом, книгой), потребляйте его на языке оригинала. Особенно это касается английского контента, и вот почему.
Я не знаю, как устроена русская озвучка в целом – я имею в виду общие принципы, – но она довольно странная. Там, где в оригинале персонаж шепчет, перводчик орет, словно над ухом. Русская озвучка до неприличия громкая как в маршрутке: громко, четко и заранее.
Перевод начисто срезает акценты персонажей. Скажем, англоязычный китаец говорит с характерным акцентом, которого банально нет в переводе. В лучшем случае китайца озвучивают тоном выше, мол, азиат же. Но это не то. Аналогично с мексиканским рокочущим произношением – его просто нет.
Послушайте персонажей из “Омерзительной восьмерки” Тарантино. Там каждый голос – праздник. Южный выговор, северный, мексиканский акцент, оттяжки, проглатывание слогов и целых слов. Красота!
То, что пропадают игра слов и различные отсылки, нет смысла писать. Видимо, на их адаптацию не остается времени.
Теряются акценты речи. Например, босс называет чернокожего подчиненного “black cunt” – в переводе мы получаем “урод”. Конечно, я бы не хотел слышать дословный перевод, но вместе с тем и не должно быть беззубого сглаживания. Это же бандиты! Персонаж высказался грубо и уничижительно, и нужно как-то это передать.
Приведу пример, который особенно меня расстроил. В игре Resident Evil 4 Remake есть дополнение за второстепенного персонажа. Это полноценная кампания, которая называется Separate ways – раздельные пути. В русской версии она называется “Два пути”. Казалось бы, довольно близко. Не все ли равно?
А вот и нет, у названия – два смысла. Первый – оба персонажа идут к цели разными дорогами, временами сталкиваясь и расходясь, поэтому их пути – раздельные. А второй – в финале происходит предательство, и главный герой на прощание произносит:
I think we both know this is where we go our separate ways.
Полагаю, мы оба знаем, что теперь наши пути – врозь.
То есть речь идет о разобщении, о том, что альянсу конец.
Вот в чем дело! Последняя фраза обыгрывает название кампании. В нем два смысла: прямой (разные дороги) и переносный (конец дружбы). Название подобрано так, что истинный смысл игрок поймет в финале. Покачает головой и скажет: да, теперь наши пути действительно separated.
Скажите на милость, как русский перевод “Два пути” все это передаст? Ответ – никак, игрок просто проезжает мимо.
Ясно, что не всегда уровень английского позволяет все понять без пауз и перемоток. Но результат того стоит. То же самое касается книг: в свободное время почитываю Остров сокровищ и Гарри Поттера на английском. Попадаются отличия, но об этом – в другой раз.
-
Гугл и Эпл
Пишут, что Гугл закручивает гайки: запрещает ставить приложения из .apk-файлов. Основание – борьба с вирусами и обманом пользователей, когда под видом официального приложения им впаривают невесть что.
Насколько я понял из комментариев, на самом деле будет так: приложения из .apk все-таки можно поставить, но только если они подписаны ключом разработчика. Чтобы получить этот ключ, нужно пройти верификацию Гугла, и, возможно, заплатить (последнее – неточно). Разумеется, если разработчик проштрафится, Гугл отзовет его ключ и все .apk, им подписанные, превратятся в тыкву.
В этом плане установка из .apk не отличается от установки из магазина, потому что ограничения остаются в силе. Подойдет разве что приложениям, которые по требованию властей убрали из Play Store: фирма может выложить подписанный apk на сайте.
Особым приложениям новое правило навредит. Это некая серая зона: софт, который полезен людям, но не пройдет модерацию Гугла. Например, приложение для диабетиков, которое дает указания по приему инсулина и других лекарств. Рекомендация лекарств запрещена в Гугле, поэтому люди выкладывают самосборный .apk. Что им теперь делать – не знаю.
Я тоже получил письмо от Гугла с предложением пройти верификацию. Все потому, что лет пятнадцать(!) назад выкладывал в стор приложение – личный кабинет Читинского Энергосбыта. Им даже пользовались, а однажды какая-то УК хотела его купить.
Вторая новость – Эпл создаст внутренний магазин приложений для России. Там смогут публиковаться те, кто под санкциями: всякие сберы-тиньковы и так далее. Пока что магазина нет, но Эпл сам идет навстречу.
Я пишу это не для того, чтобы сказать: Гугл плохой, а Эпл – хороший. Дело в другом: принципы айти-гигантов всегда оказываются соглашением в моменте. Многие выбирали Андроид только затем, чтобы ставить ломанные приложухи с 4pda. Яблочников стыдили: у вас рабство. А теперь ситуация если не переменилась, то близка к этому: один гигант закручивает гайки, другой – ослабляет, хотя оба били себя пяткой в грудь и заявляли, что никогда такого не будет.
Открытый код, бесплатность, убеждения руководителя – все это условно и справедливо только в моменте. Проходят годы и то, что было свободным, открытым или без рекламы, становится закрытым и собирает данные. Руководитель взрослеет и предпочитает не бороться, а договариваться.
Словом, уверенность в положительных сторонах софта или сервиса сегодня не может быть долгой. Все течет, все меняется.
-
ИИ-выжимка
Я часто гуглю и привык, что на первом месте – уже не ссылка или реклама, а блок с выжимкой ИИ (Gemini или как там ее). Должен признать, выжимка довольно точно пересказывает оригинал, и порой ее достаточно. Фактически, гуглить сегодня – все равно что пользоваться GPT: в обоих случаях вам покажут чей-то текст или их комбинацию.
Разумеется, объединять тексты по смыслу и делать краткий пересказ – непростая задача. Но даже она — это всего лишь алгоритм на матрицах и весах, и при чем тут интеллект – я не понимаю.
Полезным упражнением может быть вот что. Загуглите что-нибудь, над чем работали только вы. Например, библиотеку на Гитхабе с осмысленным readme. У меня есть такие, где в readme написано много. Скажем, “clоjure github deed” или “clоjure github pg2”. В результате Gemini покажет пересказ твоего же текста.
Может быть, не совсем ясен смысл моего сообщения, но постараюсь объяснить. Большинство пользователей интернета – потребители. Они смотрят обучающие видео, статьи, подключают чужой код. Алгоритм, который собрал сотню источников и выдал их сжатую версию, кажется чудом. Но чудо пропадает, когда у какого-то кусочка знания один источник и работал над ним один человек – особенно если это вы.
Когда понимаешь, что источник выжимки — ты сам, возникает интересное сопоставление. Своего рода маппинг между тем, что было в твоей голове и тем, что выдал Гугл. Примерно как смутно догадываешься, что будет по нажатию кнопки до того, как это сделаешь. Становится видна машинная природа алгоритма. Месяц тренировки – и научишься думать как он, чтобы выжимка была точнее и охватывала то, что нужно. По аналогии с сео-оптимизаторами, которые по множеству действий угадывали алгоритм ранжирования и пусть худо-бедно, но проталкивали одни сайты выше других.
Сегодня многие люди считают ИИ-модели богом из машины. Они доверяют им важные решения: на кого учиться, куда переехать, как строить отношения. Проблема в том, что им нельзя показать, из чего складывается ответ модели. В интернете нет кусочка знаний, который произвели только они. Поэтому не на чем продемонстрировать случай, о котором я писал: чтобы человек сопоставил свое мышление и алгоритм.
Если бы такой кусочек был, они бы увидели, как сильно заблуждаются.
-
A fake Clojure Object equals to what you want
Imagine you write a unit test where you compare two maps:
(is (= {:some {:nested {:id ...}}} (get-result)))Turns out, this map has a random UUID deep inside so you cannot blindly compare them with the “equals” function:
(defn get-result [] {:some {:nested {:id (random-uuid)}}}) (is (= {:some {:nested {:id ???}}} (get-result)))This won’t work because the nested
:idfield will is random every time.What to do? Most often, people use libraries for fuzzy matching, DSLs, etc. Well, a single case still doesn’t mean you should drag in another library. Apparently, it could be solved with a dummy object that equals to any UUID:
(def any-uuid (reify Object (equals [_ other] (uuid? other)))) (= any-uuid (random-uuid)) true (= any-uuid 42) falseNow replace the value in your map, and the test will pass:
(is (= {:some {:nested {:id any-uuid}}} (get-result)))It works the same for numbers:
(def any-number (reify Object (equals [_ other] (number? other)))) (= any-number 42) true (= any-number -99) trueThe only caveat is, this dummy object must be the first one in the
=function. It does equal to any object on the left but the opposite is false: a normal UUID doesn’t equal to a fake UUID.For the rest, it short and trivial, and no other libraries are needed.
-
Индекс по created_at
Маленькая техническая заметка про SQL. Такая: если в таблице есть поле
created_at, по нему должен быть btree-индекс. Если поля нет, его нужно добавить вместе с индексом.Объяснение следующее. Срез по времени – это самая частая задача в работе с данными. Если не фиксировать время события, это обернется бедой.
Эти два дня я отлаживал серьезный баг, о котором напишу отдельно. Но попутно выяснилось следующее. В базе данных есть таблица, которая фиксирует изменения сущностей. В ней один индекс – айди сущности. Это хорошо, если требуется расследовать конкретную сущность. Но оказалось, пострадало их много за определенный период, так что этот индекс бесполезен.
Я хотел выбрать события по времени, благо интервал небольшой, всего неделя. Но оказалось, что у поля
created_atнет индекса. В таблице 400 миллионов записей, и отбор по нему работает страшно медленно:limit 10занимает 8 минут.Добавить индекс в такую таблицу – страшно дорого. Это нужно делать ночью на выходных, кто на это пойдет?
Скажете: используй
create index CONCURRENTLY. А я скажу, что конкурентный индекс не работает для партицированных таблиц, а наша именно такая. Нужно делать либо обычный индекс в лоб, либо создавать конкурентный индекс для каждой партиции. Все сложно.По факту таблица превратилась в черную дыру: в нее все входит, но ничего не выходит. Она беспомощна из-за своей массы. Разве что можно найти данные по конкретной сущности, но этого часто недостаточно.
Время – ключевой фактор при расследовании инцидентов. Даже если в таблице миллиард записей, границы времени известны хотя бы примерно. Можно выбрать срез и дальше обработать его вручную. А если индекса нет, мы лишили себя такой возможности. Сами себе Буратины.
Поэтому – индекс по времени должен быть всегда и обязательно.
-
Собеседования (2)
Вдогонку – вторая мысль о собеседованиях, которая не влезла в первый пост.
Сейчас принят многоэтапный процесс собеседования: скрининг, общее техническое, алгоритмы раз, алгоритмы два, систем-дизайн, фит с командой, фит с руководителем. Пять-шесть этапов, а на самом деле их бывает больше. Мне кажется, с этим что-то не так.
Недавно на Хабре была отличная статья: человек собеседовался в разные бигтехи: тиньковы, озоны и прочее. Если коротко – половина мест не отвечает, другая половина запускает бесконечный цикл собесов. Автор очень хотел в Тиньков, но когда ему назначили восьмой(!) собес, ушел в 2Гис.
Мне кажется, причина простая – бюрократия и страх ответственности. Человек, который проводит собес, не может принять решение, но вместо того, чтобы признаться, говорит: вроде норм, но пусть посмотрит отдел X. Назначают собес с X, по итогам говорят: вроде норм, но пусть посмотрит отдел Y. И так далее, принцип ясен. Только когда совсем припрет, собираются и принимают решение.
Допускаю, что в больших фирмах действует порочная система: если взяли хорошего человека, то ничего не будет, а если плохого – интервьюеру дадут по шапке. Отсюда трусливое поведение: выгодней свалить ответственность на другого, чем решать самому.
Нужно, чтобы была система поощрения. Если взяли человека, которым все довольны, и он отработал год, интервьюер получает премию – ведь он принял верное решение. Если человека быстро уволили, интервьюеру не дают шапке, но отмечают – он допустил ошибку. Если ошибок больше какого-то порога, его снимают с собеседований.
Разумеется, система работает только на долгой дистанции. Если интервьюер или соискатель ушли по своему желанию, будет трудно понять, как все было.
Когда я проводил собесы, делал это ответственно. На мой взгляд, интервьюер обязан твердо сказать: берем, не берем или, на крайний случай, берем с оговорками, например на грейд ниже. Если интервьюер жует сопли “вроде норм, но пусть еще посмотрят”, его нужно снять с собеседований. Ему дали работу, а он не справился и прячется за других.
Ребята, которые собеседуют в тиньках-озонах-яндексах по 8 раз – у вас все плохо. Вы безответственные и трусливые. Давайте подтягивайтесь.
-
Собеседования (1)
Переписывался на тему собеседований (привет, А.!) и вспомнил: в черновиках лежит заметка о том, как бы я провел собес сейчас.
Надо сказать, что я давно этого не делал. Уже 10 лет я удаленьщик без права принимать решения, в том числе в плане найма. Однако я вижу, что происходит в индустрии, замечаю, как работают те, кто прошел собес. На базе этого складываю (теоретическое) представление о том, как собеседовать сегодня.
Проблема собеседований в том, что соискателям дают одну сложную задачу. Она проверяет что-то одно, например знание деревьев или рекурсии, но ничего не говорит о других навыках. Деревья – это хорошо, но работу можно делать и без них, а если где-то застрял – спросить у коллег.
Я уже рассказывал, как знакомый собеседовался в Яндекс. Он прошел один технический собес, дали второй. Он прошел второй, дали третий. Третий он не прошел, и в работе отказали. Знакомый тут же устроился в Газпром. Спрашивается, что это было?
Напоминает развлечение, популярное в Средние века. Если женщину подозревали в колдовстве, ее топили. Если тонула, все вздыхали с облегчением – одной ведьмой меньше. Если всплывала, значит ей помог дьявол, и женщину сжигали.
В чистом виде подход Яндекса: если ты прошел собес, это наша недоработка. Держи еще. Ты должен его провалить, познать унижение и пойти на грейд ступенью ниже.
Чтобы не уподобляться Яндексу, давайте задания, которые проверяют все понемножку. Пусть человек форкнет пустой репозиторий и скачает себе. Далее пусть напишет физ-баз и проверит, нет ли в нем ошибок. Попросите добавить тест – выясните, пишет ли кандидат тесты в принципе, какой фреймворк использует. Встанет вопрос о том, как перехватывать вывод в консоль, здесь может быть до пяти вариантов. Предложите сделать функцию чистой. Попросите сделать физ-баз ленивым, то есть написать генератор. В чем разница между генератором и лист-компрехеншеном? Что такое оператор yield и как он здесь поможет?
Результат запушить в форкнутый репозиторий и открыть мердж-реквест в исходный репозиторий.
Видите: даже простое задание можно накрутить так, чтобы покрыть многие темы. Оно проверяет, умеет ли человек пользоваться гитом, может ли писать простой код, может ли писать тесты, а также продвинутые техники языка. А начиналось все, напомню, с физ-база.
Задание должно быть простым и четким. Не давайте графоманию с порталами и эльфами – такие задания дают только моральные уроды. Делайте скидку на волнение – иные люди действительно волнуются, путают функции, додумывают за вас какой-то контекст.
Дизайнер Людвиг Быстроновский рассказывал про сумму навыков. Речь вот о чем: профессионал считается таковым потому, что каждый этап он делает качественно. Спортсмен дышит, набирает скорость, отрывается от земли, летит, приземляется – и все это правильно. Даже если он накосячил на одном этапе, суммарное качество ставит его выше любителя. Так и в айти – если человек владеет гитом, пишет код, тесты, понимает продвинутые моменты, ходит в базу – на кой хрен гонять его целый час по деревьям? Или требовать с него интерпретатор Лиспа?
Заданий вроде того, что я описал, можно придумать много. Например, что-то с двумя таблицами и джоином, дерганьем урлов, вариации физ-база. Придумывать задания полезно, они развивают ваши навыки.
Похожие мысли я читал у Кирилла Мокевнина. Он проводит собеседование так: нужно скачать реальный проект (один из сервисов Хекслета), запустить локально, поправить минорный баг, отправить пул-реквест. Все. С этим справляются единицы, большинство виснут на первом шаге, не могут выполнить две команды make.
Проверяйте все понемножку, а не узкие вещи вроде рекурсии. Цель собеседования в том, чтобы понять – насколько легко включить человека в работу. Если ваше задание не отвечает на этот вопрос, это плохое задание. Проведение собесов в таком случае надо подтянуть.
-
Умиление дикарями
Цивилизованные люди умиляются дикарями: племенами Африки, жителями крайнего севера, американскими амишами и так далее. Считается, их нужно всячески оберегать от цивилизациии, хранить их язык, культуру и все такое.
Почему это так, понять не трудно. Еще несколько сотен лет назад белый человек завоевывал мир варварским способом, и в результате исчезли даже не особи (кто их считал), а виды – как животных, так и людей. Сегодня это умиление – своего рода плата за бесчинства в прошлом. Смотрите, теперь мы добрые.
Однако умиляясь дикарями, спросите себя: хочу ли я, чтобы мои дети жили как они. Чтобы девочкам делали женское обрезание и вынуждали рожать по пятнадцать раз. Чтобы дети не знали школы, книг, классической музыки, мультиков. Чтобы с ранних лет им долбили в голову мифы про богов с большой горы.
Хотели бы? То-то же. Поэтому умиление правильно назвать лицемерием. Если говоришь, что нравится, но не хочешь себе такого же, значит не нравится.
Умиляясь дикарями, помните, что когда-то они были детьми, у которых отняли право жить цивилизованно. В случае с Африкой, конечно, ребенку нелегко выбраться из саванны в город. Однако те же амиши живут в километре от моллов и городов. Помеха в данном случае одна – родители.
Амишам официально разрешено не иметь номера социального страхования. Их детям официально разрешено не посещать школу, если родители против. Разумеется, закон в последнюю очередь интересуется мнением ребенка. Родители не пустили в школу – ок, пусть сидит дома.
Я хочу, чтобы в мире не было амишей, цыган и других рудиментов общинно-первобытного строя. Не поймите неправильно: я не хочу, чтобы с ними случилось что-то плохое! Я лишь хочу, чтобы их дети пошли в школу, росли со сверстниками и вступили в брак с кем-то не из общины. Чтобы они читали книги, смотрели фильмы, ходили в бассейн и музыкальную школу. Чтобы потом то же самое случилось с их детьми. Престарелые члены общины тихо состарятся и умрут, а на месте поселения откроют музей. Смотрите, тут жили дикари, которые лечились чесноком, приносили в жертву баранов, пихали бамбук в половые органы и прочий кринж.
Поэтому к черту разнообразие культур и языков; традиций, как правильно креститься: двумя или тремя пальцами, слева направо или наоборот. Из-за подобных штучек поубивали слишком много людей, чтобы ими интересоваться. Образованный человек без скреп, культурных кодов и прочих наслоений – самый мирный представитель нашего вида.
Не забывайте о том, что дикари хороши только на картинке в атласе. В точности как пираты – это отдельная часть культуры, и каждый из нас играл в пиратов. И все же я не хочу, чтобы в мире были пираты.
Но если пираты требуют истребления, то с дикарями все проще. Всего лишь отдайте их детей в школу – и дикарей не станет.
-
Айтишные вузы
Иные студенты жалуются, что месяцами ищут работу в айти. В итоге идут в сантехники, официанты, продажи.
Рекрутеры жалуются, что месяцами не могут найти сеньорного разработчика.
В первом случае можно винить ИИ: свежий выпускник примерно ему и соответствует. С точки зрения фирмы, зачем его брать? Возьмем опытного, а где новичку набирать опыт — его дело.
Мне кажется, проблема вот в чем: выпускники не готовы к работе в айти. Даже после пяти лет обучения их нужно учить Гиту, рабочему процессу, минимальной рабочей этике. Фирма берет на себя то, что должен быть дать университет.
Появилось великое множество онлайн-школ; слово “айти-курсы” стало мемом, потому что влечет за собой контекст, одновременно смешной и грустный. И все равно на рынке кадров несоответствие спроса: много выпускников, мало опытных ребят.
Проблема в том, что многие преподы не понимают предмета, который преподают. Годами они дают студентам Паскаль или Си с классами, не понимая, что это бесконечно далеко от реальности.
Однажды я помогал студентке первого курса с Кложей. Ужаснулся: им велели писать парсеры без какого-либо введения в язык. Препод дал кошмарный код: запутанный, без единого комментария, с жирным макросом, который я понял не сразу. Никакой пользы от такого обучения нет — материал не усвоился, а их уже перекинули на Пролог.
Зачем так учить студентов?
А препод — писал ли он хоть раз код за деньги? Имеет ли представление о промышленной разработке? Знает ли, что такое код-ревью? Спорю на что угодно: большинство айти-преподов не пройдет собеседование на джуниора. Причина не в возрасте, а в отсталости от реалий: нужно знать Линукс, терминал, язык, тулинг к нему, тесты, фреймворки, хорошие практики и все остальное.
Бывают продвинутые преподы, которые одновременно с вузом работают в айти-компаниях. Я знаю двух, и вы тоже назовете несколько имен. Но они — исключения. Я хочу, чтобы по возможности каждый специалист вносил вклад в образование: вел лекции, писал книги, учил студентов.
Наверное, нам нужны частные айти-вузы на базе крупных компаний. Их преподаватели — сотрудники, которые, скажем, три дня в неделю работают, а два — преподают. Сами составляют программу, набирают студентов, учат, проводят экзамены. Совмещать сложно, но можно. Есть вариант с чередованием не по дням, а месяцам или даже годам. Устал от разработки— берешь год на преподавание за ту же зарплату в той же фирме.
Беда в том, что сфера образования зарегулирована по самые помидоры. Наши учителя и врачи — это самый подневольный слой общества. Учитель учит лишь в последнюю очередь, а так у него стек задач от министерства образования. Если он накосячит, дадут по голове директору, тот — завучу, а завуч съест учителя с потрохами.
В университетском образовании не сильно лучше. Когда работал в Датаарте 10 лет назад, некоторые сотрудники преподавали в воронежском ВГУ. Постоянно жаловались на бюрократию и бумажную работу, многие в итоге ушли. А ведь это были специалисты с реальным опытом работы! Не Си с классами за 98 год, а настоящая промышленная разработка! Большая потеря для студентов.
Возможно, такой вуз не будет иметь официальной силы, но будет востребован компаниями. Еще бы: если выпускник понимает азы настоящей, промышленной разработки, его надо брать — довести его сильно проще, чем знатока Паскаля или Пролога.
Я бы предложил жирным финтахам вроде тинькова-сбера подумать о создании частных вузов. Да, это сложно, долго, выгода не очевидна и ее трудно измерить. Но мне кажется, это верное направление. Обычные вузы не вывозят роль кузницы кадров. Нужен прецедент — частный айти-вуз с преподами, которые работают, а не пересказывают пыльный учебник.
И внезапно окажется — да, так можно было. Для крупной фирмы содержать свой вуз станет тем же самым, что постить сториз в соцсетях, то признаком современности.
Нужно всего лишь начать.
UPD: в комментариях в Телеграме накидали примеры подобных вузов. Не знал, спасибо!
-
Даты и файлы
Бывает, мы сохраняем файл в папку, а такой файл уже есть. Возникает диалог что делать, в котором чаще всего нас интересует переименование. Поскольку мы уже выбрали имя, то хотели бы оставить его как есть и добавить хвостик. Обычно программы дописывают в конец счетчик:
document,document (1),document (2)и так далее.Счетчик – это, конечно, лучше, чем ничего. Но еще лучше было бы дописывать в конец дату. С ней
document,document (1),document (2)становятсяdocument,document_20250807,document_20250808и так далее. Как быть, если замена происходит в рамках одного дня? Добавлять часы и минуты, например:document_20250808.doc document_202508081442.doc document_202508081446.doc document_202508081458.docУже слышу как вы пишете: дата изменения хранится в мете файла, зачем таскать ее в имени? Дело в том, что эта дата всегда теряется. Это же мета – поэтому файловый менеджер может ее скопировать, а может и нет. Если закинуть файл в какой-нибудь S3, всю мету вы потеряете.
Или скинул файл коллеге в каком-нибудь Teams, тот загнал его в Шарепоинт, а третий человек получил его в электронной почте. Уверены, что мета сохранится? Я бы очень удивился, если бы это было так.
Однажды я работал с женщиной, у которой был пунктик. Каждый файл на ее компе начинался с префикса
YYYYMMDD_. Она часто шарила экран, и я видел как при сохранении файлов она прописывала дату вручную. И таких файлов – сотни, если не тысячи. Скорее всего она знала про поиск файлов по датам, но с именем ей было удобней.Это на самом деле круто. Это убеждение, построение своего порядка. Классно, когда человек возвел это в привычку.
Короче, я бы не отказался, если бы в диалоге сохранения файла был выбор, какой паттерн использовать: счетчик или дату. Еще лучше, если это будет глобальная настройка системы. Но вряд ли это скоро случится.