Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как обойти JS скрипт, мешающий спарсить страницу?

Лучший ответ:
Смиритесь, пол интернета уже javascript based.
Загружать страницы headless браузерами, компоненты браузера есть по до все известные языки програмирования и платформы, основанные либо на webkit (например у java webengine) либо на основе firefox (mono webbrowser) либо iexplore (.net - webbrowser).
p.s. php - https://github.com/chrome-php/headless-chromium-php
Страницу получать либо прямо из языка програмирования, запрашивая webengine.document.innerHTML или делать скрин картинки, либо инжектить javascript на страницу и работать с ней как вам заблагорассудится, в т.ч. эмулировать нажатие кнопок и вообще пользователя.

Худший ответ:
Есть сервисы на базе puppeteer, они сразу отдают html - https://github.com/GoogleChrome/rendertron демо https://render-tron.appspot.com/
Вопрос: Как в PHP поймать ошибки?

Лучший ответ:
потому что ворнинги/нотисы не являются  "Code that may throw an Exception or Error".
и для них нужен кастомный хэндлер.
https://ideone.com/kFL2XY

Худший ответ:
1. Можно проверять сами данные empty isset или тип данных gettype is_array etc
2. Можно дополнительную функцию, если значение данных будет играть на логику 
3. Можно заводить переменную для сбора ошибок
Вопрос: Native VLAN, что вы конкретно думаете и знаете?

Лучший ответ:
в интернете не нашел (а может плохо искал?)
Видимо вообще не искали. Не надо так.Native VLAN

Худший ответ:
Видимо плохо искал :)
В двух словах: нетегированный трафик = native vlan. Тот случай, когда порт транковый и разделение по l2 не требуется.
Вопрос: Какой язык программирования выучить полному нулю?

Лучший ответ:
Попробуйте Python
Информации и сфер применения куча.

Худший ответ:
Я же не написал, что не получилось. Я написал, что очень трудно. Трудность для меня в том, что он какой - то мусорный, что ли. По сравнению с C#, который мы учили в универе.
Вопрос: Как выяснить причину отключения VNC сервера?

Лучший ответ:
Оставшийся lock говорит о нештатной остановке VNC Server.
Причину можно посмотреть в /var/log/x11vnc.log
(или по другому пути, который был указан в конфиге/аргументах запуска сервера)
Если полезных данных там нет, можно проверить, 
не закрывается ли он системой от OOM: dmesg | grep "kill"UPD:
TightVNC 1.3.9 известен случайными segfault-ами. В сети очень много примеров.
Судя по слухам, в версии 1.3.10 они исправлены, но с установкой этой версии могут быть трудности (её нет в пакетах, нужно собирать самому; она имеет другие ошибки).
Самым простым решением будет перейти с tightvncserver на x11vnc, vino или другие аналоги.

Худший ответ:
используйте screen.
причины нужно искать в логах. смотрите логи, анализируйте.
Вопрос: Что такое budget на upwork?

Лучший ответ:
Это значит что клиент оценил бюджет проекта в эту сумму, или клиент готов платить только такую сумму, или клиент прост от балды написал сумму.
Дальше слово за фрилансером. Он может предложить меньшую сумму, согласится на эту сумму, либо же предложить большую сумму.
Все ж очевидно :)

Худший ответ:
это бюджет проекта
вы можете просить сколько угодно
хоть больше хоть меньше 
как вы рассчитываете стоимость и время только одному богу известно
Вопрос: Как исправить ошибку inconsistent use of tabs and spaces in indentation?

Лучший ответ:
Что тут не понимать - скопипастил откуда-то кусок, а в нём табы. 3й питон считает ошибкой использование в одном файла одновременно как табов, так и пробелов.

Худший ответ:
Косяк в том месте куда указал ^
Вопрос: Где найти и как установить PHP 5.4 на Ubuntu 16.04?

Лучший ответ:
Конечно, можно заморочиться и собрать PHP из исходников. Кроме того, вам придётся собрать и Apache из исходников с добавлением модуля PHP (libapache2-mod-php).
К сожалению или к счастью, у большинства разработчиков навык сборки чего-либо из исходников безвозмездно утрачен. Разве что расширения для того же PHP (pecl) иногда приходится собирать.
Как вариант, предлагаю воспользоваться такой замечательной штукой, как контейнеризация, а именно Docker-ом. На текущий момент времени, это наиболее изящное и правильное решение. В приведённый ниже пример добавил линкование с СУБД MySQLdocker network create mysql_net

docker run --name app --net mysql_net -d -p 8080:80 \
  -v /host/to/path/app:/var/www/app/ \
  -v /host/to/path/config_apache:/etc/apache2/sites-enabled/ \
  romeoz/docker-apache-php:5.4
, где  /host/to/path/app - путь к директории с вашим приложением (от корня), в данном случае, CMS Битрикс/host/to/path/config_apache - путь к директории с вашим apache-конфигом. Можете посмотреть, как выглядит базовый файл конфигурации
Далее, поднимем контейнер с СУБД:docker run --name db --net mysql_net -d \
  -v /host/to/path/data:/var/lib/mysql \
   romeoz/docker-mysql:5.5
, где /host/to/path/data - директория с вашими данным (БД).
В CMS Битрикс в качестве хоста в настройках БД, необходимо указать db, т.к.  контейнер СУБД имеет такое имя - --name db.
Ваше приложение будет доступно по адресу http://localhost:8080. Для красоты можете задать  в /etc/hosts свой домен, к примеру, 127.0.0.1:8080  myapp.
Если вы привыкли править БД с помощью web-клиента phpmyadmin, то вот здесь есть инструкция, как поднять официальный контейнер и для него. На вашем месте я бы воспользовался иным другим клиентом - свободным или не свободным. К примеру, во всех продуктах от JetBrains, в том числе, и в IDE PHPStorm, встроен отличный инструмент DataGrip, ранее известный, как 0xDBE.
Естественно, есть необходимость в этом немного разобраться, но, поверьте, оно того стоит. За этим подходом будущее. Плюс не придётся засирать свою хост-систему всяким мусором, ведь контейнер всегда можно убить, а образ породивший его удалить.

Худший ответ:
Скорее всего вам придётся откатится на Ubuntu 14.04
PHP 5.4 уже не поддерживается, и поставить его его на 16.04 без костылей и велосипедов не получится.
Вопрос: Почему Android со временем начинает очень тормозить?

Лучший ответ:
Телефон начинал звонить и только секунд через 10 на дисплее появлялась кнопка ответить. 
...ну хоть ктото ещё заметил...
сталкивался с этим на HTC WildfireS, SE X8 ,SonyE, Lenovo S820 уже начинает за год работы проявлятся на Xiaomi S3
===
Своими изысканиями (с Wildfire из-за другой но связанной проблемы), я пришёл к выводу что это обновляется Google Play Services и андройд очень сильно завязанный на его службы начинает дико тормозить

Худший ответ:
У меня galaxy s6 и каждый год переустанавливаю  сервисную прошивку с полным удалением. Так же начинает подлагивать, тормозят программы, конечно не так сильно, но микрофризы интерфейса жутко  бесят.
Вопрос: Можно ли спомощью впн в выдаче получать контент, будто в США?

Лучший ответ:
Поможет, при условии что у вас будет VPN который позволяет выбирать сервер. В вашем случае нужно выбирать сервер на территории США, и при условии что вы будете использовать режим Инкогнито. Хотя хром например судя по всему берет данные о локализации еще и на основании настроек ОС. И понятное дело искать нужно будет на английском.

Худший ответ:
Да поможет.
Но там не только от точки выхода зависит, но и от настроек компьютера и программ.
Вопрос: Почему мы иногда пишем document.ready а иногда нет? В чем отличие от window.load?

Лучший ответ:
Событие DOMContentLoaded ( в jQuery $(document).ready()) происходит когда загружен весь HTML и построен DOM.
Событие window.load - когда загружен весь HTML, построен DOM, загружены и применены все стили и изображения (то есть намного позже).И зачем вообще все это, если все и без этого работает?Если у вас и так всё работает - не используйте. Однажды появится ситуация, что вы пытаетесь повесить обработчик на форму, а она еще не загружена - придется использовать DOMContentLoaded. Или однажды нужно будет скриптом учесть высоту какого-то блока, но стили еще не прогрузились - тогда воспользуетесь window.load. А пока и так работает, зачем лишний раз изображать карго культ?

Худший ответ:
вообще-то не работает.. Если к обратится к элементу через js когда его ещё не существует, тоесть весь DOM не загрузился, то ничего не получится. нужно подождать когда он загрузится а потом уже к нему обратится и что-то с ним делать.
'после ready' DOM уже создан и уже можно обратиться к элементам, после load не только DOM создан но и всё всё всё загружено пользователем, картинки итп.. в случае с ready пользователю виден только <img> как тег, а в случае load уже и как картинка на экране.
Примерно вот так...
Вопрос: Как позвонить с сервера на телефон?

Лучший ответ:
1) Найти в шкафу любой 3г модем.
2) Поставить в модем симку на которой есть деньги.
3) Вставить модем в сервер.
4) На сервере находим порт модема и в него пихнуть ATDTномер;
5) При необходимости на коленке собрать маленький скрипт для упрощения работы.

Худший ответ:
У скайпа есть вебморда. Ставите Headless browser на сервер, которых сейчас куча развелось. И звоните через https://web.skype.com/ факт установления соединения вроде бы бесплатный, но сам не проверял.
Чтобы возможность взонить была активна, нужно иметь не нулевой баланс.
Вопрос: Есть ли курсы «широкого» разработчика сайтов?

Лучший ответ:
Чтобы качественно обучили верстке с условного нуля и программированию с условного нуля. По итогу необходимо чтобы человек обучился выполнять задачи по работе с сайтами в широком списке CMS-ок.Срок обучения: 10-15 лет, условно.

Худший ответ:
Ответ на ваш вопрос будет достаточно кратким - нет. Таких курсов нет. Вам нужно последовательно начать обучение с азов, а именно в такой последовательности:
1. Html
2. Css
3. Javascript (базовый уровень) + JQuery
4. PHP + Mysql
Освоив всё это, вы без проблем сможете начать разбираться с различными CMS'ками и фреймворками.
Ну а дальше вас уже никто не ограничивает, можете прокачивать свои навыки: можете углубиться только в вёрстку, можете отточить фронтенд, можете заняться бэкендом. Фуллстэк нежелателен, если вы, конечно, не хотите остаться рядовым вебмастером с набором знаний из пунктов 1-4, которые я перечислил выше.
Вопрос: Как вставить элемент в рамку?

Лучший ответ:
Вот отсюда должен стать понятным базовый принцип построение таких рамок
https://codepen.io/the_human_brian/pen/vOrbBG

Худший ответ:
Именно такое решение, которое вы написали - самое простое и лучшее.
Либо просто положили внутри relative блока-родителя дочерний блок с absolute и background белого цвета, либо сгенерировали его через псевдоэлемент :before.
Вопрос: Книга по Linux?

Лучший ответ:
UNIX AND LINUX SYSTEM
ADMINISTRATION
HANDBOOK
Fourth Edition
Evi Nemeth
Garth Snyder
Trent R. Hein
Ben Whaley
Есть в русском переводе.

Худший ответ:
UNIX AND LINUX SYSTEM
ADMINISTRATION
HANDBOOK
Fourth Edition
Evi Nemeth
Garth Snyder
Trent R. Hein
Ben Whaley
Есть в русском переводе.
Вопрос: Как выйти на оборот, который позволит закупаться по оптовым ценам?

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

Худший ответ:
Есть хорошая книга "Категорийный менеджмент в рознице" от издательства "Питер". Там все расписано как работать с ассортиментом. Несмотрите на название, принципы схожи.
Вопрос: Провайдер переходит на GPON, какие преимущества я получу как абонент?

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

Худший ответ:
1. +. Причем скорее всего вам придется согласится на тот, что впарит провайдер
2. Все зависит от правайдера. Вам нужно проверить почему видео сыпется или самому, или с участием спецов провайдера. Если проблема в проводе от вас до ближайшего обрудования провайдера - проблема решится, если нет - есть вариации (вплоть до смены провайдера)
Вопрос: Почему не срабатывает transition на градиенте?

Лучший ответ:
Градиент транзишеном менять нельзя. Но можно сделать 2 блока конкретно для бэкграундов (или например через :before/:after) и менять у них прозрачность.

Худший ответ:
Нет. Градиент - это background-image, а анимация этого свойства не поддерживается. https://bugzilla.mozilla.org/show_bug.cgi?id=546052
Можно сделать через псевдоэлемент с изменением прозрачности.
Вопрос: Есть ли Visual Studio 2015 community для Mac OS?

Лучший ответ:
1)студии под OS X не существует.
2)на макбук элементарно ставится винда и прекрасно там работает. и студией замечательно там можно пользоваться
по поводу ноутов, в вашем случае. если хватает денег на макбук - берите макбук. просто потому что
1)ноуты реально качественные
2)на макбук штатно встаёт винда а вот на виндоноут OS X встаёт нелицензионно, нештатно и с вопросами. может да а может и танцы с бубнами.
таким образом с макбуком перед вами открыты все дороги развития, на нём штатно заработает любой инструментарий, в какую сторону бы вы не решили развиваться - и как OS X/iOS разработчик, и веб, надо->перегрузились->и перед вами полноценный  Win-аппарат, ковыряйтесь с дотнетом в любимой студии.
удобно. я бы поступил именно так.

Худший ответ:
Нет, не существует. Но всегда есть вариант купить мак и поднять на нем виртуалку с виндой.
Вопрос: Выскакивает рекламный баннер на сайте?

Лучший ответ:
Это сотовые операторы внедряют свою рекламу.
Переходите на https - решите проблему.

Худший ответ:
Некоторые сотовые операторы (Megaphone, tele2) теперь показывают на всю страницу рекламные банеры. Если заходите через мобильный инет.
Внизу статьи, где написано как решить проблему и как это работает.MegaphoneTele 2
Вопрос: JavaScript. Разница в скорости выполнения и потребляемой памяти?

Лучший ответ:
Если конструктор User будет вызываться более одного раза, то однозначно и производительнее и оптимальнее по памяти будет так:function User(name) {
  this.name = name;
}
User.prototype.say = function say() {
  for (var i = 0; i < 100; i++) {
    console.log('My name is ' + this.name);
  }
};

Худший ответ:
Если конструктор User будет вызываться более одного раза, то однозначно и производительнее и оптимальнее по памяти будет так:function User(name) {
  this.name = name;
}
User.prototype.say = function say() {
  for (var i = 0; i < 100; i++) {
    console.log('My name is ' + this.name);
  }
};
Вопрос: C# как сделать массив с меняющимися значениями?

Лучший ответ:
Как то так:var array = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            Console.WriteLine(string.Join(" ", array));

            var last = array.Last();    //берем последний элемент
            array.Remove(last);         //удаляем его
            array.Insert(0, last);      //и добавляем в начало, все элементы сдвигаются и, соответственно, меняют четность позиции

            Console.WriteLine(string.Join(" ", array));
Ну или так:var array = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            Console.WriteLine(string.Join(" ", array));

            for (int i = 0; i < array.Count - 1; i += 2)
            {
                //Меняем соседние элементы местами
                array[i] ^= array[i + 1];
                array[i + 1] ^= array[i];
                array[i] ^= array[i + 1];
            }

            Console.WriteLine(string.Join(" ", array));

Худший ответ:
int[] arr = любой массив интов;
for(int i = 0; i < arr.length - 1; i+2)
{
    int x = arr[i];
    arr[i] = arr[i+1];
    arr[i+1] = x;
}
Берем из массива число, меняем его с соседом местами, двигаем индекс на 2 позиции ( т.е. к следующей паре)
Вопрос: Почему код с псевдоклассом :after не валиден?

Лучший ответ:
Судя по тому что смог разглядеть забыли кавычки в content: 'стрелочка'

Худший ответ:
Есть такая международная организация, которая занимается стандартизацией спецификаций для HTML и CSS (на самом деле не только для них, и организации две, но это не важно). Называется она World Wide Web Consortium, или сокращённо W3C.
Как то раз они начали писать стандарт для языка CSS третьей версии. Наверное им в голову моча, или они решили сделать разделение на стили состояния (hover, active и т.п.) и стили генерации (before, after) более явным, но в общем в третьей версии языка они решили добавить ещё одно двоеточие для стилей псевдо-элементов.
Браузеры в свою очередь сделаны для людей, а людям будет неприятно если какие-то стили вдруг перестанут работать. Поэтому современные браузеры решили поддерживать оба стандарта. Короче:
В CSS 2 - :after (старые + современные браузеры)
В CSS 3 - ::after (только современные браузеры)
Но, в принципе, оба варианта валидны.
Вопрос: Почему стандартная командная строка Windows 7 не показывает все результаты?

Лучший ответ:
Жмякните на консольном окошке в верхнем левом углу, зайдите в properties, и выставьте желаемый buffer size. Здесь же можете задать доп. папаметры поведения консоли, цвета и т.п.

Худший ответ:
не показывает все результаты?Добавьте постраничный вывод, напримерdir /s *.* | more
Вопрос: Как обрезать холст SVG по размеру содержимого (nodejs)?

Лучший ответ:
Выделить все и Shift+Ctrl+R (Правка - Resize page to selection)

Худший ответ:
Я ответил не на все свои вопросы в этой сфере, но если вам интересно, то свой решение по "Как собрать иконочный  шрифт с помощью node.js" я разместил здесь. https://goo.gl/XybDPp
Вопрос: Как найти наиболее точный промежуток?

Лучший ответ:
1. Математически формализовать понятие "наиболее точный", составить формулу метрики.
2. Выбрать все интервалы, где :value BETWEEN `start` AND `end` и посчитать для них метрику.
3. Отсортировать по метрике.
4. Выбрать первую строку из сортированного списка.

Худший ответ:
select t.id from ranges t 
where &value between t.start and t.end -- сначала отсекаем диапазоны, в которые точно не попадаем
order by t.end - t.start -- определяем "наиболее точный" диапазон как наименьший удовлетворяющий и сортируем по нему в порядке возрастания.
таким образом, первая запись будет самая подходящаярабочий пример
Вопрос: Как посчитать длину дуги?

Лучший ответ:
Если померить длину кривой в CAD-программе, получается 2107,8 мм. Погрешность приблизительно плюс/минус 10 мм.

Худший ответ:
Определенный криволинейный интеграл от функции, задающей эту дугу.
А вообще в вашем случае, насколько я понял задание и если больше ничего нет, то нужно доказать/показать, что эта кривая является куском какой-то известной фигуры - окружности, эллипса, овоида и т.п., рассчитать центр(ы), радиус(ы), углы и подставить в известные формулы.
Если нет, то в общем виде это интеграл. Но функцию надо знать или как-то приблизить, как и границы.
Еще может быть что длину дуги нужно как-то аппроксимировать кусками на разных участках.
Все это догадки без полного задания...
Вопрос: В чем проблема при запуске OS X в Virtualbox?

Лучший ответ:
Прям ваша ситуация -- https://forums.virtualbox.org/viewtopic.php?f=2&t=70232

Худший ответ:
techsviewer.com/how-to-install-mac-os-x-el-capitan...
techsviewer.com/install-macos-sierra-virtualbox-windows
Есть готовые образы. Есть шаманские команды для правки машины перед запуском. Сам проверял только El Capitan.
Для вари
techsviewer.com/how-to-install-mac-os-x-el-capitan...
techsviewer.com/install-macos-sierra-vmware-windows
Вопрос: Как ускорить инсерты в базу sql?

Лучший ответ:
Лучше всего делать пакетную вставку или же конвертировать xml в соответствующий sql (с теми же пакетными вставками) и выполнить его через mysql -u username -p password database_name < /path/to/your/file.sql
Обратите внимание, на -p password, между ними, если мне не изменяет память, нет пробела.
Для варианта с SQL формируйте вот такое:INSERT INTO tbl_name
    (a,b,c)
VALUES
    (1,2,3),
    (4,5,6),
    (7,8,9);
Только не три строки, а по 100-500 - думаю подберете соотношение.
Примерный код формирования, основанный на вашем примере:<?php
$batchSize = 1000;
$counter = 0;
$valuesBatch = array();

foreach ($leiLEIobj as $leiLEIs)
{
    foreach ($leiLEIobj as $leiLEIs)
    {
        $LEI = $leiLEIs->nodeValue;
        $arResult[$LEI][$leiLEIs->nodeName] = $LEI; 
        //$LEIs[$row->nodeName] = $row->nodeValue;
    }

    $valuesBatch[] = "($values)";
    $counter ++;
    
    if ($counter==$batchSize)
    {
        $qwery = strtr(
            "INSERT INTO `leis`($fields) VALUES ($values) :text",
            array(
                ':text' => implode(",\r\n", $valuesBatch)
            )
        );

        // Выполнить запрос или записать его в общую переменную-накопитель
        $counter = 0;
        $valuesBatch = array();
    }
}
P.S. csv так же можно сформировать нужным образом из XML, дополнив значениями по умолчанию те, которых в xml-строке нет, а дальше что-то подобное вот этому:LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE abc
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"' 
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(col1, col2, col3, col4, col5...);

Худший ответ:
Укажите какую СУБД используете.
Для увеличения производительности вставки можно отключить/удалить индексы у таблицы, куда происходит вставка. После завершения операции снова включить. Пересоздать индекс после вставки будет быстрее, чем он будет пересчитываться после вставки каждого значения.
Кроме того обычно СУБД поддерживают операции bulk insert (пакетная вставка), возможно для этого придется конвертировать файл в формат, который понимает СУБД. У MySQL вроде такого нет, в этом случае остается только вариант, предложенный Дмитрий
Вопрос: Как получить список URL адресов со страницы?

Лучший ответ:
Есть куча парсеров на php для dom элементов:Zend_Dom_QueryphpqueryCDomhtmlSQL
Выбирайте себе по вкусу.

Худший ответ:
Может обойти циклом? Пока проверка по regex не вернет false
Вопрос: 8+6 пин заменит 8+8 пин на видеокарте?

Лучший ответ:
Переходники есть.
8/6 + 8 www.nix.ru (ошибка)

Худший ответ:
Там же съёмные кабели. Можно найти кабель на 8 pin.
Вопрос: Как достучаться до саппорта гугла?

Лучший ответ:
Еще лет 10 назад обычно над админами блокирующими почту по всяческим блэклистам как минимум смеялись.
Иногда приходилось на таких админов матюкаться...
В общем не надо информацию из блэклистов использовать как руководство к дропу почты.
Балл повышать - можно, но с осторожностью. Да и то чуть-чуть.

Худший ответ:
Отвечаю сам себе.
Погрепал я почтовый лог и понял по количеству серверов, находящихся в списке SORBS, что гуглу пофиг на это от слова совсем.
Вопрос закрыт. Саппорта у гугла нет. Ищем обходные пути.
UPD: Частное решение по обходу черных списков SORBS и прочих:
добавить в /etc/mail/access:# Whitelist for exclude checking some servers against blacklists
Connect:74.125.83                 RELAY
Connect:209.85.128                RELAY
Connect:209.85.161                RELAY
Connect:209.85.213                RELAY
Connect:209.85.214                RELAY
Connect:209.85.215                RELAY
Connect:209.85.216                RELAY
Connect:209.85.218                RELAY
Connect:209.85.220                RELAY
Список разумеется неполный, только те, что в логе оказались. Грейлистинг эта запись не отключает, но milter-greylist поставляется с фильтром "broken mta", куда входит в том числе и гугл
Вопрос: Как вызвать шаблон из контроллела?

Лучший ответ:
Первый фасад, второй хелпер. Хелпер по сути обертка над контрактом. Результат получите равнозначный.

Худший ответ:
Фактически ничем, про это даже в документации написано.
Вопрос: Анализ товаров с сайтов как сделать?

Лучший ответ:
Реализовать возможно. Использовать можно например requests и Beautiful Soup. А как это сделать - вопрос слишком общий.

Худший ответ:
В принципе задачу решил! Дерзайте и у вас все получится!
Вопрос: Черный экран с курсором после установки Kali Linux c болванки?

Лучший ответ:
> решил начать изучение linux
Для этого есть Debian, Ubuntu, Fedora с кучей документации к ним.
Чего на этот kali так тянет? Для других целей его делали.

Худший ответ:
Здравствуйте, решил начать изучение linux. Скачал 64х(процессор тоже имеет 64х архитектуру) образ kali linux с официального сайтаначать изучение linux kali linux 
Выбрать одно.
Вопрос: Как обойти капчу API VK?

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

Худший ответ:
используйте автоматический распознаватель капч это почти бесплатно
Вопрос: Что есть у Delphi для организации очереди потоков?

Лучший ответ:
В общем ответ найден -это указанная мной же библа OmniThreadLibrary с его Pipeline

Худший ответ:
Delphi многопоточность. То, что Вам надо.
Для этого используйте TThread