bash.im ithappens.me zadolba.li

Linux

12639

О неизбежных недостатках недофотошопа

Дорогие мои ваятели опенсорса! Я из тех, кто ругает и ненавидит программное обеспечение со свободным кодом.

Вот офисный недопакет на букву L. Поставили его перед визитом Всем Известного Отдела взамен MSO2003. Теперь все бегут с вопросами: «А где? А как?» А всё потому, что система меню и значки очень далеки от «оригинала».

Вот текстовый процессор (хотя и ненавижу это словосочетание) Writer. Диалоговое окно «Параметры страницы» обнаружил в «Формате», а все закономерно ищут в «Файле».

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

Прежде всего, перемещение с шагом в несколько миллиметров. Нужно точнее — зажмите Shift. Сделать точное перемещение в графическом редакторе безо всяких лишних кнопок — не наш вариант.

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

Посмотрите, как у вас организована работа с кривыми. Это не работа, а издевательство.

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

Прокрутка и масштабирование. Колесо прокручивает вверх-вниз. Масштабирование с зажатым Ctrl. Горизонтальная прокрутка только с помощью скроллера внизу окна. Прокрутка при нажатии на колесо (третью кнопку мыши)? Нет, не слышали.

Персональные лучи ненависти тому, кто придумал писать такой громадный пакет на Java, поскольку быстро работать оно по определению не может и не будет. Ах, совместимость? C++ вон тоже компилируется под кучу платформ.

Огромное спасибо за напрочь отсутствующий API (в предке на букву «O» он есть хоть в каком-то виде).

Вот другой графический недоредактор на букву G. Кому пришло в голову написать его на Python?

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


Прежде чем сделать что-то своё, сперва внимательно посмотрите, как это сделано у других, а только после этого делайте. За юзабилити и эргономику пока что денег не берут — или я неправ?

12593

Ну, за holy peace

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

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

Тихо и спокойно обсуждали достоинства и недостатки своих ОС и гаджетов старый линуксоид, который Убунту даже на планшет исхитрился впихнуть, менеджер-поклонник зелёного робота, дизайнер, влюблённая в надкусанное яблоко, и я, работающий с виндами от 2000-й до 8-й, имеющий айфон, айпод и планшет на Андроиде. Домашняя машинка, к слову, у меня под «восьмёркой» как под основной системой, а для подработок, которые случаются нечасто, я пользуюсь Убунтой.

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

12581

Масонско-опенсорская мини-ложа

Довелось мне как-то общаться с товарищем. Узнав, что я сторонник открытого ПО, он начал всячески его поносить. Пересказывал содержание дорабатывавшего тогда последние месяцы Get the Facts, приправляя страшилками, которых нет даже там: «опенсорс используют хакеры-террористы», «опенсорс портит железо» и прочее в этом духе. Я пропускал мимо ушей, с трудом сдерживая смех: не первый раз подобное слышал, только в более мягкой форме.

Потом я обнаружил его в одном чате. Там он много говорил об опенсорсе в положительном ключе: консультировал других, сам получал консультации, воодушевлённо делился новостями. Но как-то странно: количество его собеседников не превышало и десятка, обращения остальных он игнорировал.

При первой же встрече я прямо в лицо сказал ему:

— Видел тебя в таком-то чате, ты, оказывается, сам опенсорсник.

— Да, у меня всё ПО опенсорсное, недавно даже BIOS перепрошил.

— А почему ж ты тогда мне проприетарщину пропагандировал?

— Потому что опепнсорс — для элиты, и я делаю всё, чтобы отвадить от него быдло.

Во амбиции! Целая масонская мини-ложа, из него одного и состоящая. Я колебался, куда это запостить, сюда или в «Задолба!ли». Решил сюда: и об IT, и сказать ему тогда хотелось не «задолбал», а «такие, как ты, позорят республику». Но не сказал и этого: такие, как он, существовали в единственном экземпляре. Или ошибаюсь — вы тоже сталкивались? А «существовали» в прошедшем времени — потому что он и сам от этой точки зрения потом отказался.

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

12571

Верхи хотят, низы не могут

Когда-то компания «Интел» создала первый процессор 8086. У него был свой, отдельный набор команд, несколько регистров, сегментная адресация памяти и своя тактовая частота.

Работы над процессорами продолжались, и вот появились 80186, 80286, 80386, 80486, и наконец — Пентиум с его суперскалярной архитектурой.

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

Но и на этом развитие не остановилось: появилось расширение команд процессора MMX — по этому поводу даже крутили по ТВ рекламные ролики, — затем появились SSE, SSE2, SSE3, 3DNow, и ещё, и ещё, и ещё; регистры стали 64-битными, появились многоядерные модели.

Каждый новый набор команд позволял какой-то тип операций выполнять чуть быстрее — достаточно было пересобрать программу на новой версии компилятора с поддержкой нового набора команд процессора.

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

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

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

В этом смысле Линукс всегда старался быть по мере возможности современным, но в то же время не оставлять за бортом и владельцев всякого хлама, ведь не каждый пользователь имеет самое новое оборудование. Но целенаправленный отказ от новых возможностей — это не только поддержка владельцев хлама, но и ущемление интересов владельцев более новых систем, ведь выходит, что возможности их оборудования просто не задействованы. Поэтому рано или поздно наступает момент, когда обновлённая программа может и не заработать на откровенно устаревшем процессоре, система команд которого уже не отвечает среднестатистическим современным требованиям. И тогда после обновления ядра пользователя ждёт эпик фейл, он же kernel panic. А виноват, конечно же, «кривой Линукс».

И как другие люди ухитряются не встречать этого загадочного «паника»?

12548

После смерти попаду в репозиторий

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

Август. Семь часов вчера. Возвращаюсь с работы домой. В ушах наушники-вкладыши с музыкой. Вижу, что мне навстречу идёт какая-то женщина в возрасте, явно хочет со мной заговорить. Вынимаю наушники (музыка продолжает играть). Женщина протягивает мне какую-то брошюру и спрашивает:

— Вы читали Библию? Вот на этом сайте (показывает на буклет) есть вся информация, возьмите, прочтите… У нас есть божество, мы называем его Яхве, что в переводе с иврита означает «Иегова».

Вежливо отказываюсь от буклета и объясняю:

— Нет спасибо, я исповедую другую религию. Я поклоняюсь Убунту. Я танцую с бубном, чтобы сервера пинговались.

Немая сцена. Женщина, наверное, в течение десяти секунд смотрит на меня молча, непонимающим взглядом, после чего отводит глаза в сторону и говорит:

— Что-то не совсем вас понимаю. Расскажите о своём боге.

— Сейчас очень немногие обращены в эту веру, но постепенно Убунту поклоняются всё больше и больше людей.

— Вы верите в то, что ваш бог сможет избавить человечество от войн, конфликтов, страданий?

— На самом деле, избавление уже происходит. Начиная с 1970 года благодаря Убунту было пресечено порядка 70 конфликтов разного масштаба.

— Что может дать вам ваш бог? Что вы имеете благодаря ему? — спросила женщина.

— Благодаря ему мы имеем свободные продукты. Более того, эти продукты мы можем конфигурировать и настраивать под свои нужды, но для этого надо обладать исходниками.

— Например, какие продукты?

— Например, GIMP. Это графический редактор. Благодаря этому редактору мы может создавать любые образы, которые захотим.

— Что вы ощущаете, когда стали верить в своего бога?

— Я стал более спокоен, неконфликтен. В отношении меня не проявляют агрессии даже приверженцы других религий.

— А что по поводу смерти и вечной жизни? — спросила она.

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

— А вы бы хотели остаться на Земле или попасть в рай? — ещё один вопрос от нее.

— Как я уже говорил, как только я стал поклоняться Убунту, я стал мирным и неконфликтным. С тех пор мне всё равно, что на Земле, что в раю.

Беседа подходила к концу, хотя, конечно, только благодаря мне. Начинает она:

— Вот посмотрите на небо, какое оно голубое. И облака какие перистые. Посмотрите на траву. Проведите по ней рукой, какая она мягкая…

Тут я понимаю, что пора это всё заканчивать. Я извиняюсь, вставляю наушник в левое ухо, начинаю изображать разговор по телефону. Прошу прощения у воображаемого собеседника и обещаю подойти к его машине через пять-семь минут. Говорю непросвещённой, что мне пора. Она заканчивает свой монолог:

— А фрукты какие сочные! Верьте в Иегову, и у вас это будет (природа с фруктами и бессмертие, я так понял).

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

12538

Здесь будет автострада

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

Сначала попытался разделить задачу на разные устройства: LB-роутер на одно, VPN-сервер — на другое. Долго подбирал роутер, присмотрел пару. Один из них — киска начального уровня. И тут выяснилось, что киска начального уровня стоит раза в четыре поболее второго роутера, но LB поддерживает, только если ей купить расширение лицензии на её IOS до соответствующих функций — плюс надо бы пройти обучение, которое стоит ой-ёй, либо надолго забуриться в талмуды. Расширение лицензии стоит раза в полтора больше второго роутера.

Второй выполняет свои функции относительно пристойно, пристойно настраивается. Есть куда расти. Но производитель выбрал философию: для каждой новой версии прошивки выпускается новая ревизия роутера, со старой несовместимая аппаратно. Хотите ту же модель с исправленными ошибками и новыми фичами — покупайте новую ревизию.

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

Для VPN-сервера — отдельные требования.

Согласно идеологии противников сборки суперкаров, брать надо кошку enterprise-уровня или Juniper. Или городить сервер с серверной Windows, которая будет работать круглосуточно. И брать к ним отдельного спеца-сетевика.

Я не настолько богат, чтобы покупать такие ненадёжные решения.

Взялся изучать бесплатные варианты. Это либо Linux, либо FreeBSD, либо дистрибутивы «router on PC». Последнее зацепило. Впечатлил Endian, но он стал коммерческим, хотя несколько лет назад был условно бесплатным. Из троицы FreeSCO, m0n0wall, pfSense остановился на последней, так как первые два давно уже не развиваются.

И всё взлетело. Более того, не пришлось разделять на два устройства. А работает всё, стыдно сказать, на железе, которое теперь списывается, ибо на нём уже невозможно работать. У меня на старых Pentium 4 c 2 ГБ памяти запас по мощности таков, что можно через них поток под 500 мегабит пропускать, только тогда захлёбываться начнут, а по памяти — я потолка вообще не скоро достигну.

Бонусом оказалась возможность поднятия на них же OpenVPN-серверов с шифрованием и связи по нему двух точек. Плюс подъём PPTP-сервера для подключения удалённых клиентов…

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

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

12532

Нет, хозяин, ты велел работать

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

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

Хм. Что ж, делать нечего — перезапустим сервер. shutdown -r now. Энтер. Отключаюсь. Через полминуты снова подключаюсь. Уже загрузился? Хорошо. А Самба? Снова? Нет, стоп. Аптайм — много дней. И тикает.

Паника.

Паника-паника-паника.

Думаю. init 6? reboot? halt? kill 1? Аптайм продолжает идти, зараза.

Так, пошли грязные методы. Хорошо что есть рут-доступ. Вотчдог есть софтверный. Не получается повесить. Занулить память ядра? Нет. Как-то вызвать панику ядра? Система стабильная нынче, и старые шутки типа битого образа по сети не работают. Что ещё, что ещё?

«Нет, хозяин, ты велел работать».

О! Точно! Вот оно! Как хорошо что я не отключил в приступе паранойи magic SysRq!

echo b > /proc/sysrq-trigger

Выдохнули!

И пусть аптайм тебе будет пухом.

12520

Мы суперкар расширим и углубим

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

Ребята, нельзя оправдывать одну крайность другой.

Помимо основной работы (связь) занимаюсь видео весьма серьёзно. Инструмент — весь из себя проприетарный Final Cut на ещё более проприетарном Mac. Обработка фото — постольку-поскольку, значит, хватит открытого GIMP. Системы управления сетями на работе построены на проприетарной винде. Что ж, приходится разбираться. Нужно быстро поковыряться на коленке с чем-то своим — Ubuntu Server.

Продолжим аналогию с другой техникой.

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

Делать светильник в коридор самому — очень спорный шаг. А вот в готовом поменять патроны на GU10 — видимо, придётся (у меня в некоторых помещениях осветительная сеть на 12 вольт).

Городить систему защиты от протечек самому — имхо, глупость: их готовых море разливанное. А вот делать SMS-оповещение, сообщающее о протечке, о сбое электропитания и о состоянии датчиков дыма/движения в довесок — похоже, придётся городить что-то на комбинации готовых блоков и самодельщины: очень уж разношёрстные устройства надо объединить.

Так что — да здравствует гармония и соответствие задач методам их решения! Всем бесконечного аптайма!

12502

Что нам стоит суперкар построить

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

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

Прошло …дцать лет, и я его купил. Сейчас «Скайлайны» стоят относительно дёшево, но качество сказывается: ездят хорошо и по сей день. Но речь пойдёт не о ТТХ, а о человеке и его увлечении.

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

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

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

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

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

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

Прошло два года. Я стал заметно агрессивнее и раздражительнее, особенно когда говорили про машины. Мотор стоял на своём месте, но завести его не получалось даже потому, что блок управления двигателем не считывал сигналов со многих датчиков, которые стояли на родном (для этого двигателя) автомобиле. Тут вновь возник вопрос: что дешевле? Купить эти дорогостоящие запчасти или поковырять блок управления? Я думаю, ответ очевиден. Я начал искать распиновки контактов, соединять соединяемое и обманывать необходимое. Поскольку от электрики и паяльника я был очень далёк, все шло долго, муторно и начинало нервировать.

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

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

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

Рассуждать о правильности или неправильности каких-либо действий можно, но уже не хочется. За те три с половиной года, которыми я обладал этим автомобилем, я проехал семь тысяч километров. Для сравнения, сейчас мой пробег в среднем составляет две-три тысячи километров в месяц только на то, чтобы добраться до работы и обратно, без учёта внеплановых поездок. К слову, мой хороший знакомый примерно в то же время, что и я, купил себе в кредит новый импортный бюджетный автомобиль, в адрес которого на тот момент я выражался: «Ширпотребная телега, на которой стыдно на рыбалку выехать». За то свободное время, что я лежал под машиной, он подрабатывал в разных фирмах, чем-то занимался и радовался жизни. Он выплатил кредит за свой автомобиль, устроился на серьёзную работу, накопил денег и открыл своё дело. А я построил автомобиль! Здорово, не правда ли?

Ах да, к чему я? Я работаю IT-специалистом, потому что назвать себя системным администратором сейчас уже рука не поднимается. Но знаю одно: никогда больше не подойду к свободным операционным системам. Никогда больше не буду говорить: «Форточки — самое худшее, что мог придумать человек». Никогда больше не сяду настраивать серверы на FreeBSD. Никогда больше не буду соваться в стойки, если всё работает. Никогда больше не буду думать, что я умнее тех специалистов, которые пишут проприетарное ПО. Если я захочу добиться результата, куплю нужный инструмент и не буду изобретать велосипед. Пусть поклонники свободного ПО меня закидают шапками, хоть я и сам раньше любил freeware. Но я понял, что скупой платит дважды, и на первый взгляд дешёвая затея выливается всегда дороже. Всегда.


Спасибо, что вы прочитали этот монолог. Я не ищу понимания, но буду очень рад, если эта статья поможет хоть одному человеку. Благодарю вас — и да пребудет с вами сила, друзья!