Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как правильно скрыть от индексации в robots.xtx?

Лучший ответ:
Примерно так:User-agent: *
Disallow: /podarok/*?
Кстати, можно просто указать канонические ссылки:<link rel="canonical" href="http://example.com/podarok"/>
Так же можно использовать специальные правила, чтобы роботы просто игнорировали нежелательные ссылки, таким образом можно снизить нагрузку на сервер:
https://yandex.ru/support/webmaster/robot-workings...
https://www.google.com/webmasters/tools/crawl-url-...

Худший ответ:
Каеоникал мне кажется тут куда уместнее
Вопрос: Как лучше всего строить сетки и клеточные автоматы?

Лучший ответ:
Canvas, например.
Рисовать игру типа жизнь, да и вообще любую игру, в виде таблицы с помощью тега <table> - это очень странное решение.

Худший ответ:
Попробуй поработать с массивами и canvas. Разбей структуру программы на две части - обработка массива и его отрисовка. В массиве храни данные и работай с ними, а при изменении массива - перерисовывай изображение.
Вопрос: Зачем в докерфайл добавлять VOLUME /tmp?

Лучший ответ:
Команда VOLUME нужна, чтобы изменяемые данные, появляющиеся во время жизни, хранились на хосте отдельно от файловой системы контейнера, могли быть обработаны/переиспользованы после его удаления и администрируемы через Docker API.

Худший ответ:
Смотрите, это на самом деле костыль. 
При сборке контейнера эта директива говорит создать некую точку монтирования. И там могут быть (при сборке) расположены некоторые данные, логи или еще что угодно.
Далее, когда вы будете запускать этот контейнер будет автоматически создан указанный volume c теми самыми данными.
Пример который это иллюстрирует есть в официальном руководстве.
https://docs.docker.com/engine/reference/builder/#...
Вопрос: Почему все типы данных четные числа?

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

Плюс все это проецируется таки в регистры процессора, кеш и прочее. И int в регистр пройдет со свистом, в отличие от вашего 5-байтного типа данных. Вот и оптимизируют железо (читай даже - разрабатывают) под фиксированные размерности.

Худший ответ:
Размер слова в проце всегда четный
Вопрос: Нужен ли красный диплом?

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

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

Если есть возможность поправить на диплом с отличием - лучше поправить. Лишним не будет.

Худший ответ:
Пересдавайте, конечно, с красным-то всегда лучше.
Главное - не слушать недоучек, которые сейчас налетят и будут балаболить, что они и без диплома поднялись хорошо.
Вопрос: Как запаковать все библиотеки Qt в один файл, для распространения моей программы?

Лучший ответ:
Да, нужно.
Если мне не изменяет память, для полностью статичной линковки нужно покупать лицензию.

Худший ответ:
1. Можно завернуть всё в единый бинарник инсталлера, скажем InnoSetup.
2. Можно линковаться статически, но либо предоставлять объектные файлы, либо открывать исходники. 
Все нужные либы подтягиваются через windeployqt
Вопрос: Как в написании операционной системы используют C?

Лучший ответ:
Не важно, на чём пишутся драйвера/ось/программы, в результате исполняется процессором машинный код - бинарные данные определённого формата, по которым процессор понимает, что ему делать в данный момент. На ассемблере приходится программировать, когда нужно реализовать очень "близкие к железу" вещи - трансляция памяти, регистры ввода-вывода. Каждая ассемблерная инструкция соответствует одному машинному слову, короче самый близкий к машине человекочитаемый код. 
Куда проще писать на высокоуровневых языках - части ОС и драйвера часто пишут на Си. Этот язык более прост для человека. Естественно этот код тоже сначала переводится компилятором в ассемблер, а затем и в машинный код. Другого процессор "не понимает". Этот набор данных подсовывается компьютеру в каком-либо виде. Например, самая первая инструкция в х86 ПК исполняется по адресу 0xFFFFFFF0 в адресном пространтсве. Этому адресу в современных ПК соответствуют самые последние 16 байт флеш-памяти BIOS. С этого кусочка запускается компьютер (это если кратко, на самом деле нифига не так). 
Раньше BIOS загружал операционку со специального загрузочного сектора на диске. Там в сыром виде лежал машинный код, который дальше обеспечивал загрузку ОСи. Сейчас всё более просто - место BIOS занял UEFI, по соглашению, система теперь стартует с файла в папке /efi/boot/bootx64.efi на загрузочном диске. То есть уже не просто сырые сектора, а сразу файлы. Обработка файловой системы и дисковых устройств запрограммирована в самом UEFI.

Худший ответ:
https://en.wikipedia.org/wiki/History_of_Linux
Как  то так
Или  то что мы в универе учили
https://homes.cs.washington.edu/~tom/nachos/
Вопрос: Влияют ли отказы одной конкретной страницы на выдачу других?

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

Вопрос: страницы с отказами 20-25% влияют только на выдачу самих себя или на остальные тоже?

На другие тоже, выше аргументировал.

Худший ответ:
влияют на остальные т.к. меняют характеристики сайта

хорошо видно по языковым копиям, когда конкретную версия Гугл запихивает в Ж
Вопрос: Почему я получаю ошибку «sqlite3.OperationalError: no such column: test»?

Лучший ответ:
Потому что не надо значения в sql-запрос подставлять с помощью форматирования строк.

Худший ответ:
Запросы с параметрами в SQLite
Попробуйте так:
cursor_voice.execute("UPDATE voice_data SET c_name=?",(name_category,))Только я не пойму смысла в данном запросе.
Вопрос: Как выбрать роутер для офиса?

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

Если надо недорого - смотрите в сторону Микротика. Например, такого. Запас по функционалу огромный, позволит избежать головной боли в будущем.

Худший ответ:
Остановились на Keenetic Hero 4G (KN-2310)  Провод тянем с другого конца здания в резетку через гигабитный комутатор тп линка.  (почему то восточная часть здания совсем плохо интернет ловит) Используем уже год и нам нравится. Единственное, я из старых кинетиков wifi меш, у меня все ок, но почему то у некоторых, ловит базу, а не подключается на меш (и получается что 1 палка wifi)

Понравилось в нем все, наглядный монитор трафика, простая настройка доступов, а так же НАСТРОЙКА КАНАЛОВ GSM!!! (band) разные бенды дают разную скорость. + можно приколхозить внешние антанты (на wifi и GSM)
Вопрос: Как подключить базу данных к Telegram боту?

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

Худший ответ:
Согласен с предыдущим комментарием. Просто взять и подключить)
Для ответа на ваш вопрос тут слишком мало информации.
Какой язык программирования используете?
Какая база (msSQL, mySQL, postgres и т.д.)?
Возможно вы имеете ввиду какую-то публичную базу данных, к такой  базе обычно подключают через API.
Обычно зная какой язык и какая база достаточно в google ввести эти два слова и найти ответ)
Вопрос: Возможно ли создание языка, который бы пришёл на замену С по производительности?

Лучший ответ:
Всем привет!

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

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

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

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

Опять же. "быстрые программы" это что?
Где-то быстрее Go, где-то С++, где-то чистый асм, где-то даже питон.
Скорость программ обычно не так критична. А конкретный алгоритм можно вылизать почти на всем.

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

Его название — Rust.
И да создание языка — это далеко ещё не создание компилятора для такого нового языка и других инструментов. 
Это многие человеко-часы, то есть годы разработок.
Вопрос: Как сделать заставку на рабочий экран посредством python?

Лучший ответ:
Через реестр если только:
https://ru.stackoverflow.com/questions/119187/%D0%...

Худший ответ:
1. Загрузить картинку и написать на ней что-нибудь
2. Сохранить заставку
Вопрос: Как переписать код js чистого на jquery?

Лучший ответ:
Идёте гуглите jq аналоги нативных функций и переписываете. В чём проблема-то?

UPD. Что, никак? Ну ок, ок, так уж и быть, держите:

$('#myselect').change(function() {
  $('#mydiv').text(`Вес брутто*: ${$(':selected', this).attr('for')} кг`);
});

Худший ответ:
В голом js не силен, но как-то так:

$('#myselect').on('change', function() {
        var f = $('#myselect').find('[value="' + $('#myselect').val() + '"]').attr('for');
        $('#mydiv').html('').html('Вес брутто*: ' + f + ' кг');
});
В частности, я хз от чего берется this.value, поэтому предположил что от селектора.
Вопрос: Как использовать async\await во Vue?

Лучший ответ:
А then то зачем?example: async() => {
  console.log('start');
  for (let i in this.orders) {
      await this.getOrder();
      console.log('loaded ' + i);
  }
  console.log('finish');
}snippet
UPD
Важно: в определении методов нельзя использовать стрелочную функцию, если вам нужен доступ к this. Освежите знания по стрелкам, контекстам.

Худший ответ:
Вам нужно подключить regenerator-runtime либо использовать babel-plugin-transform-async-to-promises

UPD: будьте аккуратны при использовании этого плагина, так как у него есть весьма неприятный баг https://github.com/rpetrich/babel-plugin-transform...
Вопрос: Почему я не могу вытащить изображения из input type file на js?

Лучший ответ:
Потому-что инстанс jQuery не является DOM нодой
Скорее всего на этой строке у Вас вообще ошибкаfilesLength = control.files.length;
Извлеките реальную DOM ноду:var control = $('#images').get(0);

Худший ответ:
тыц
Вопрос: Хотел изучить разработку игр. Наткнулся на Unity и Godot. Выбрал Godot. Как его учить?

Лучший ответ:
Даже и язык учить не нужно.
Берешь демку и повторяешь по шагам.
Изучение языка идет автоматически.

Худший ответ:
Да блин, просто возьми ютюб, доки и демки. И повторяй их.
Вопрос: Как узнать запаролен ли rar-файл?

Лучший ответ:
Поленились, или не помог?
Аналогичный вопрос со СО

Худший ответ:
rar имеет консольный тул. Его можно вызвать как то так
$ rar -l <namefile>
И проанализировать листинг. Там скорее всего напротив каждого шифрованного файла будет какая-то пометка или символ.

Автору - неприлично спрашивать такой вопрос совсем не подготовившись.
Вопрос: Как сделать рандом с процентами?

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

Такой способ делает ваши значения управляемыми буквально одним параметром веса.
И не нужно шатать код.

Обновление от 13.06.2020:
Так вышло, что мой тимлид математик и нашел интересное и эффективное решение этой задачи
<?php

$values = [
    ['value' => 'One', 'weight' => 20],
    ['value' => 'Two', 'weight' => 30],
    ['value' => 'Three', 'weight' => 50]
];

function randByWeight(array $arr) {
    $max = 0;
    $result = [];
    foreach($arr as $value) {
        $rand = pow((mt_rand() / (mt_getrandmax() + 1)), 1/$value['weight']);
        if ($rand > $max) {
            $max = $rand;
            $result = $value;
        }
    } 

    return $result;
}

// Например: 'Three' выпадет в 50% случаев, тк его вес -- половина от суммы всех весов
// Например: 'Two' выпадет в 30% случаев, тк его вес -- 30% от суммы всех весов
var_dump(randByWeight($values));
sandbox.onlinephpfunctions.com/code/39de2d54a298de...

Чем хорошо это решение — его можно использовать прямо в SQL запросе!
SELECT * FROM table ORDER BY POWER(random(), 1/weight) DESC LIMIT 1

Классическое решение:
<?php

$values = [
    ['value' => 'One', 'weight' => 20],
    ['value' => 'Two', 'weight' => 30],
    ['value' => 'Three', 'weight' => 50]
];

function randByWeight(array $items) {
    $sum = array_reduce($items, function(int $acc, array $item): int {
        return $acc += $item['weight'];
    }, 0);
    
    $rand = (mt_rand() / (mt_getrandmax() + 1)) * $sum;

    foreach($items as $item) {
        if($rand < $item['weight']) {
            return $item;
        }
        
        $rand -= $item['weight'];
    }
}

// Например: 'Three' выпадет в 50% случаев, тк его вес -- половина от суммы всех весов
// Например: 'Two' выпадет в 30% случаев, тк его вес -- 30% от суммы всех весов
var_dump(randByWeight($values));
sandbox.onlinephpfunctions.com/code/aee9dca651213e...

Худший ответ:
Сделай массив элементов. Туда добавляй столько элементов, сколько у него шанс выпадения. One - 70 раз, Two - 20 раз. И рандомно выбирай из массива элемент
$items_set = array();
		foreach ( $items as $item_id => $item ) {
			for ( $i = 0; $i < $item['chance']; $i ++ ) {
				$items_set[] = $item_id;
			}
		}
		$rand_id = $items_set[array_rand( $items_set )];

		$rand_item = $items[$rand_id];

		return $rand_item["id"];
Вопрос: Можно ли перевести данный код на язык PHP?

Лучший ответ:
Язык программирования JavaScript и язык программирования PHP - это совершенно разные вещи. И переводить данный код на PHP - не имеет смысла.

Если приводить аналогии, то ваш вопрос можно перефразировать так: можно ли сосиской подстричь волосы?
Бессмысленный вопрос, верно? Или: можно ли шарфом заправить автомобиль? Что за бред, спросите вы. А вот ещё: можно ли зонтиком накормить ребёнка?

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

Худший ответ:
JavaScript, а в данном случае jQuery используется для реализации frontend. Вы не сможете реализовать управление элементами страницы на языке PHP, просто потому, что этот язык относится к backend разработке.
Вопрос: Ошибки 499 в одном браузере, как найти что вызывает?

Лучший ответ:
блокировщик рекламы вызывает

Худший ответ:
блокировщик рекламы вызывает
Вопрос: Возможно ли работать с 3d графикой Java?

Лучший ответ:
Да, через Opengl, например.
https://coderlessons.com/tutorials/java-tekhnologi...

Худший ответ:
Да, через Opengl, например.
https://coderlessons.com/tutorials/java-tekhnologi...
Вопрос: Как на сайте интернет-магазина организовать прием оплаты в биткоинах?

Лучший ответ:
Использовать BitPay. например. или можно https://github.com/btcpayserver/btcpayserver

Худший ответ:
Рекомендую сразу найти мерчант, который может это предложить
Вопрос: Получиться сделать гаусс пушку из модуля 12-220 В.?

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

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

Лучший ответ:
В сессии.

Худший ответ:
В сессии.
Вопрос: Как вывести на автономный монитор или телевизор картинки, меняющиеся нажатием кнопки?

Лучший ответ:
Достаточно флешки с двумя картинками.

Худший ответ:
До кучи ещё предложу фоторамку с ДУ. Конечно, если такой размер экрана допустим.
Вопрос: Макимальное количество socket.io подключений на nodejs?

Лучший ответ:
то максимальное количество на IPv4 - 2^32 * 2^16 = 281474976710656  (на самом деле не все адреса можно использовать), даже если на одного пользователя будет уходить 16Kb (буферы, структурки, поинтеры итд) то это 4 398 046 511 104 Mb памяти :) Она то и кончится первой.
Прикиньте сколько вы хотите памяти на сокеты, и поделите на 16Kb (из головы, для ноды можно самому замерить).
Если отключить TCP keep-alive и WS ping, то сокеты пассивны и не кушают ЦПУ.

Худший ответ:
Учитывая тот факт, что socket.io работает и без веб-сокетов по механизму polling (откатывается на него при невозможности использовать вебсокеты) - то количество сессий может быть бесконечным, т.к. клиент может с одного и того же клиенского порта накидать тонну пакетов для разных сессий.
Вопрос: Стоит ли становиться верстальщиком в 2021 с последующим ростом в веб-разработчика ,веб-дизайнера?

Лучший ответ:
Веб будет жить бесконечно или по крайней мере еще долго. Но становиться верстальщиком и ждать топовых заказов тоже смысла нет. Если постараться, то html/css можно выучить за месяц-полтора, а препроцессор(обязателен для верстки) за максимум неделю. Если вы достаточно умны, думаю опыта сможете набирать в процессе работы. Но также нужно понимать, что чем больше вы знаете(не в плане количества инструментов, а в умении разработки), тем более вы востребованы. Одной верстки маловато, нужно учить js и при желании пару его фреймворков. Если хотите во фриланс, учите всякие cms и crm: они очень востребованы, но я считаю что расти как разработчик вы не будете. Лучше учить программирование и всегда стараться автоматизировать процесс работы и свой продукт. С зарплатой проблем никак не будет, главное помните: доход пропорционален вашим стараниям. Думаю, это правило работает во всех сферах. А в целом, работа айти-специалистов довольно хорошо ценится

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

1) Остаться верстальщиком и специализироваться на сложных дизайнерских макетах, где нужна PixelPerfect-верстка,поддержкой любых устройств и браузеров

2) Изучить несколько js-библиотек и добавить в свои возможности интерактив, анимацию при прокрутке, эффектые слайдеры нестандартные и вот это все. Для этого не обязательно становиться программистом, достаточно изучить документацию и практиковаться 
Примеры библиотек
scrollmagic.io
https://scrollrevealjs.org/
https://masonry.desandro.com
https://kenwheeler.github.io/slick/
https://github.com/artpolikarpov/scrollyeah

3) Изучить фреймворк, например Bootstrap 4 или Bulma. Чтобы ускорить свою работу, раз и получать заказы конкретно под эти фреймворки, два.
https://getbootstrap.com/
https://bulma.io/

4) Научиться интегрировать вашу верстку с популярными CMS. И вот вы уже делаете не просто статическую верстку а сайты целиком.

5) Начать изучать актуальный стек технологий, чтобы стать фронт-енд разработчиком.

6) Плюнуть на верстку, начать заниматься веб-дизайном и собирать готовые сайты с помощью конструкторов (тильда, webflow, readymag, wordpress + elementor, etc), знания html+css тут только помогут
Вопрос: Каждый cpp должен включать main()?

Лучший ответ:
Только главный.
В дополнительных (где вы просто код храните, чтобы главный файл не загромождать), конечно, не надо.
Программа может состоять из многих cpp-файлов, а может из одного, но main() указывается лишь однажды во всех случаях.

Худший ответ:
 main в c++ необходим потому, что является точкой входа в приложение. Использовать его нужно лишь в главном файле cpp .
Вопрос: Почему практически все демо делаются не Plug and Play?

Лучший ответ:
да потому что это пример/proof of concept, а не законченное/готовое решение.
кто заморачивается готовым решением, те не пользуются песочницами.

Худший ответ:
Решить задачу в ограниченных условиях намного проще. Упомянутые вами доработки обычно дадут 20% результата и потребуют 80% времени. Зачем авторам это время тратить, какую пользу им это принесёт?
А вообще, на вопрос "почему какие-то люди что-то сделали так, а не иначе" могут ответить только эти самые люди. Нет какого-то кодекса кодпенера, по которому запрещено делать полноценные законченные решения. Как и нет кодекса, обязывающего их делать.
Мы вот вам приводим гипотезы, а вы на них отвечаете "не, ну можно же было сделать". В чём смысл этого обсуждения?
Не говоря уже о том, что утверждение про "процентов 90 из них либо вообще не применимы, либо нужно все править" явно взято с потолка (как и мои проценты, разумеется, но это хотя бы известный принцип Парето). Вы ведь не проводили исследования на эту тему? Может, это конкретные авторы, которых вы смотрели или конкретные типы задач, а остальные 90% решений как раз образцовые? Или соотношение 50/50?
Вопрос: Есть ли смысл учить wordpress в 2020?

Лучший ответ:
Да.
Вообще глупый вопрос, вы уж извините.
Есть смысл учить любой инструмент который вам нужен в работе. Нужен wordress, ок. Учите.
А насчет того, что там что-то умирает и тп, ну до этого нужно ещё дожить, возможно вы уже даже не будете разработчиком, а руководителем например?
Короче говоря, делайте и учите то что получается и имеет спрос.
Wordpress еще долго будет иметь крайне высокий спрос, а php вовсе не умирает, свою долю в своей нише он имеет достаточно серьёзную и активно развивается. Как и вордпрес

Худший ответ:
 По прогнозам некоторых людей, PHP скорее всего через год - два умрет, а вместе с ним и все CMS, написанные на нем
Смешно такое читать. Помню такие прогнозы и 5 лет назад и даже 10 лет назад.
Именно заставлять себя изучать WP нету смысла, тем более там ещё тот г.код под капотом. 
Потратьте время на прокачку скилов по программированию. Тогда не важно с какой CMS или фреймворком работать. При должных навыках и опыте на изучение уйдет от недели до месяца.
Вопрос: Как установить интернет драйвер на linux ubuntu с диска?

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

Можно ещё проще:
1. Установить нормальную десктопную ОС, где не будет таких глупых проблем.

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