Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: А как вы делаете свои jpeg'и прогрессивными?

Лучший ответ:
Для автоматизации используйте плагин https://github.com/imagemin/imagemin-jpegtran с опцией progressive:true
UPD
Я как-то не особо заморачивался в данном аспекте оптимизации, но ваш вопрос сподвиг-таки меня на доработку своего таска. В итоге прогрессивный режим работает и таск выглядит вот так сейчасvar imagesTask = function () {
    return gulp.src([paths.src])
        .pipe(changed(paths.build))
        .pipe(imagemin([
            imagemin.gifsicle(),// default
            imagemin.jpegtran({
                progressive: true
            }),
            imagemin.optipng(),// default
            imagemin.svgo()// default
        ]))
        .pipe(gulp.dest(paths.build))
        .pipe(browserSync.stream())
};
https://github.com/delphinpro/gulp-starter/blob/ma...

Худший ответ:
ivan1kazantsev для начала сохраняешь в ФШ с нужными настройками, а потом уже можно через плагины Гранта/Гулпа, онлайн сервисы прогнать.
Вопрос: Как делаются таблицы для категорий и их подкатегорий?

Лучший ответ:
Читать Nested sets

Худший ответ:
Читать Nested sets
Вопрос: Почему не передается параметр через onClick.AddListener?

Лучший ответ:
Замыкания! Информации куча. Вот к примеру

Худший ответ:
Скопируйте то что хотите передать в локальную переменную внутри тела цикла.
Вопрос: Как у вас написано руководство использования серверного оборудования в организации?

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

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

Лучший ответ:
display: flex;
align-items: stretch;
 - родителю
Либо JS

Худший ответ:
общий родитель, блок1 релятивный, 2-й с absolute top:0; height:100%;. Первый собой растягивает родителя, второй растягивается.
Либо js
Либо таблицы
Вопрос: Как обойти рекапчу в е2е тестах?

Лучший ответ:
Костыли. Если можно было бы обойти капчу, то зачем её было ставить?

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

Лучший ответ:
Elcomsoft торгует уже много лет....

Худший ответ:
Как вам сказал sim3x  в комменте, нарветесь на УК РФ если будете брутить ресурс, который вам не принадлежит (vk, ok, fb).
Если вам заказчик предоставил например запароленый архив или диск и просит восстановить информацию (точнее пароль), то вполне можно продавать
Вопрос: Как автоматически добавлять класс jQuery с интервалом?

Лучший ответ:
Вариант в виде плагинаHTML+JS<div class="container">
    <div>div 1</div>
    <div>div 2</div>
    <div>div 3</div>
    <div>div 4</div>
    <div>div 5</div>
    <div>div 6</div>
    <div>div 7</div>
</div>(function($) {
    $.fn.classСycle = function(o) {
        var _this = this,
            opt = $.extend({
                class: 'default_class',
                delay: 1000
            }, o),
            divs = $('div', this),
            len = divs.length - 1,
            init = function(i) {
                setTimeout(() => {
                    divs.removeClass(opt.class);
                    $(this).addClass(opt.class);
                    if (i >= len) {
                        setTimeout(() => $.fn.classСycle.call(_this, opt), opt.delay);
                    }
                }, i * opt.delay);
            };
        return divs.each(init);
    };
}(jQuery));
// Использование
$('.container').classСycle({
    class: 'active', // активный класс
    delay: 750 // задержка
});

Худший ответ:
Делал эту штуку вот тут topzakazz.ru/amst  780 и ниже несколько строк раскоментить и будет работать. Думаю всё вполне понятно как реализовать.
Вопрос: Загрузить большой объем данных на Ubuntu Server?

Лучший ответ:
Запаковать в www.quicklz.com/exdupe (быстро жмет и быстро расжимает). Раздать через torrent. На сервере скачать через консольный torrent клиент. 
40Гб на 8 мбит/с это же всего 4 дня. В чем проблема?

Худший ответ:
Скопировать на флэшку и сходить куда-нибудь с нормальным каналом. Альтернатива - что-нибудь типа rsync, с поддержкой докачки.
Вопрос: Покупка домена у конкурента?

Лучший ответ:
На кой чёрт вам покупать чужие головные боли? Занимайтесь развитием своего проекта.

Худший ответ:
Не стоит.
Только если выкупить и вести 2 проекта параллельно - имеет смысл.
Вопрос: Где тут ошибка?

Лучший ответ:
То есть ты пишешь класс еггог, но при этом не умеешь включать элементарное отображение ошибок в РНР?

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

Всегда пиши в начале своего кода две строчки
error_reporting(E_ALL);
ini_set('display_errors', 1);
на боевом сервере меняй 1 на 0.
Это ВСЁ что нужно для обработки ошибок

Худший ответ:
Ты НЕ можешь использовать имя Error для класса: https://www.php.net/manual/ru/class.error.php

class MyError
  {
    public $error;

    public function setError($text,$number = 0)
    {
      $this->error['text'] = $text;
      $this->error['number'] = $number;
    }

    public function getError()
    {
      return $this->error;
    }
  }

$x = new MyError();

$x->setError('Error!');

print_r($x->getError());
Код сам сравнишь.
Вопрос: Как подписаться на изменение значения через оператор =?

Лучший ответ:
С помощью Proxy:var obj = {};

var obj = new Proxy(obj, {
	set: function(target, key, value, self) {
		console.log("I have no idea what im doing");
		target[ key ] = value;
	}
});

obj.a = 2; // "I have no idea what im doing"

Худший ответ:
var value = 0;
var old-value = value;

function oldornot(new-value) {
value = new-value;
   if new-value == old-value {
     echo "Not changed";
   }
   else {
     echo "Changed";
     old-value = new-value;
   }

oldornot(59)
// Changed
oldornot(59)
// Not changed
Ты проверь и исправь если что-то не так, Давно уже не писал что-то на php
Вопрос: Политика конфиденциальности, портянка текста или просто бутафория?

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

Худший ответ:
оформи как у конкурентов
Вопрос: Как вставлять 2 отличающихся логотипа при посадке верстки на wordpress?

Лучший ответ:
С помощью add_theme_support( 'custom-logo' ) можно добавлять 2 лого?
Можно добавить дополнительное поле с помощью Customizer и потом вывести его в теме.
Примерно так:function my_customize_register( $wp_customize ) {
    $wp_customize->add_setting('header_logo', array(
        'default' => '',
        'sanitize_callback' => 'absint',
    ));

    $wp_customize->add_control(new WP_Customize_Media_Control($wp_customize, 'header_logo', array(
        'section' => 'title_tagline',
        'label' => 'Логотип'
    )));

    $wp_customize->selective_refresh->add_partial('header_logo', array(
        'selector' => '.header-logo',
        'render_callback' => function() {
            $logo = get_theme_mod('header_logo');
            $img = wp_get_attachment_image_src($logo, 'full');
            if ($img) {
                return '<img src="' . $img[0] . '" alt="">';
            } else {
                return '';
            }
        }
    ));
}
add_action( 'customize_register', 'my_customize_register' );
И вывести в шапке<a href="/" class="header-logo">
	<?php
	$header_logo = get_theme_mod('header_logo');
	$img = wp_get_attachment_image_src($header_logo, 'full');
	if ($img) :
		?>
		<img src="<?php echo $img[0]; ?>" alt="">
	<?php endif; ?>
</a>Пример из реальной темы. Только там добавляется чекбокс, но принцип аналогичный.Статья по теме добавления поля для текста в подвале.

Худший ответ:
Грубо говоря, половина функционала wordpress напрямую зависит от вашей темы.
Исправьте тему, добавьте функционал. 
Не умеете, закажите работу фрилансеру.
Вопрос: Как работают конструкторы в php?

Лучший ответ:
Может сформулировал не очень но пробел есть.  - это вообще не понятно.
Быстрее было проверить, чем писать вопрос.class A
{
    public $varFromA;

    public function __construct()
    {
       /* Выполнение запроса к БД и получение результата */
       $this->varFromA = 'query_result';
       var_dump($this->varFromA);
    }
}

class B extends A
{
}
new B();
Если создать объект класса B, то будет инициализирован конструктор класса А тоже (т.е. все запросы и функции что есть в конструкторе класса А будут выполнены)

Худший ответ:
если вы вызываете сначала controller1, a затем controller2, то конструктор выполнится два раза.
https://ideone.com/Uv7B8k
Вопрос: Как добавить слепок текущего состояния?

Лучший ответ:
Проблема в реактивности, при изменении текстов в инпуте, меняются старые записанные обьекты
Ну да, ну да. Вот так и получается: JS не учи, фреймворки используй.

Сохраняйте копию вместо оригинала. Типа так:

state.filter_list.push({ ...state.filter })

Это если объект плоский. Если есть вложенность, используйте _.cloneDeep, например (или какой-либо иной аналог, или сами можете попробовать реализовать рекурсивную функцию копирования).

Худший ответ:
Или так:state.filter_list.push( JSON.parse(JSON.stringify(state.filter)) )
Вопрос: Актуален ли сейчас redux для react?

Лучший ответ:
Актуален и еще долго будет.

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

Лучший ответ:
начинал стандартно с html, css. Пилил просто сайтики, потом задумался уже о функционале, пошел в сторону asp.net, c#, MSSQL - было много велосипедов, кое как справлялся, но понял что подход был не совсем верный. Уж слишком много пробелов, которые очень сильно мешали и замедляли в десятки раз всю работу. Благо в школе еще учил жаву, относительно учил конечно)) Но без этого вообще был бы ад. 
 После чего решил все таки пойти в универ на информатику - там уже изучал плюсы, и большенство пробелов сняло как рукой. 
 Дак вот, если бы я вернулся назад и заного начинал учиться, вопреки всему - начал бы с с++. Да труднее, но зато освоив его - с легкостью можно будет перейти почти на что угодно. Ибо в первую очередь ты учишься программировать, понимать логику программирования, собираешь арифметические знания.
 Т.к. у тебя может нету возможности тратить время на универ или же просто вокруги нету нормальных, советую взять хорошую книжку (какую? тут есть на форуме целые подборки) с практическими заданиями, читай и обязательно закрепляй знания на примерах, выдумывай их сам, проблемные места пости тут - люди будут помогать. И когда пройдешь хотябы 1 книгу полностью начинай делать реальные задачи. Выдумывай себе программы и пиши их. Еще можно брать небольшие программки и пытаться их скопировать.
 Еще советую ознакомиться с такой темой как memory management, как работает компайлер? какое поведение у каждой твоей строки программы? Куда они сохраняются, как они сохраняются итд итп. Понимая это, тебе будет легче находить ошибки. А также конечно же учишь пользоваться дебагером хД 
 Просто знать синтаксис это посредственность. Его можно загуглить, спросить и все готово. А вот вникнуть в саму суть программирования - это уже сложнее.

Худший ответ:
а дальне напишите сайт себе и всем друзьям и родственнникам
Вопрос: Как заставить midnight commander отображать псевдографику?

Лучший ответ:
TERM какой? насколько я знаю, от термкапа зависит. В Х TERM=xterm отображается нормально. В консоли TERM=linux - и тоже отображается нормально.  CentOS 6.8 Но - зашел в виртуалку где Calculate Linux с ядром 4.4.14 - там тоже TERM=xterm, но вертикальные рамки с разрывами, хотя горизонтальные без.
Еще вариант - тему mc проверить, какие значки установлены для отображения рамки.

Худший ответ:
ну вопервых ты как смотришь если через путти то это одно просто смени кодировку на utf
если у тебя прям в самой системе так то другое дело
Вопрос: Могу ли я взять патент и нужен ли он мне вообще?

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

Худший ответ:
Просто оставлю это здесь: https://habrahabr.ru/post/288440/
Вопрос: На чем делается 3D анимация в JS?

Лучший ответ:
three.js и прочее это только библиотеки/фреймворки для удобства работы с WebGL, поэтому на вопрос "Как такая физика делается в JS" будет правильнее ответить WebGL. И если хочется понять как именно и что там работает, то начните с WebGL. А на чем конкретно в вашем случае было сделано, то это скорее всего three.js.

Худший ответ:
Ctrl-U - и всё перед вами.
Вопрос: Bootstrap Studio пользуетесь им?

Лучший ответ:
Есть еще такая вещь как Pingendo. На сайте он-лайн версия и десктопное приложение. Странно, что только для Bootstrap 4, но зато бесплатно, пока бета. Если нужно приложение для 3-го Bootstrap'a, могу у себя поискать и куда-нибудь сбросить.

Худший ответ:
мда, веб-программированием занимаюсь уже 5-й год а об этом слышу впервые, 1-х вижу штука будет полезная, 2-х спасибо что открыл глаза, 3-х я думаю что для новичка будет удобнее знать интерфейс программы чем какой класс что делает в bootstrap. Так-что я советую!
Вопрос: Что значит U в обозначении оперативной памяти?

Лучший ответ:
возможно U это оригинальный способ указания типа памяти - не буферизованная, для обычных компьютеров.
погуглите Form Factor: UDIMM
отличие от буферизованная - больше нагрузка на контроллер памяти процессора, потому если устанавливать такую память в сервер, то максимального объёма памяти для серверного процессора не добиться.
https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B3%D...
и ещё, никогда не делайте так DDR4, 3333 MHz (PC4-26600U) - пишите полную модель памяти, тогда на сайте производителя можно узнать тип и характеристики

Худший ответ:
Вы не ошиблись в написании?
https://yandex.ru/search/?text=PC4-26600U
Вопрос: Есть ли возможность восстановить файл в Notepad++?

Лучший ответ:
Сам столкнулся с этой проблемой. Посмотрел папку, где хранятся резервные копии. В Notepad++ открываем: Опции->Настройки->Резервное копирование->Путь копии. Заходим в папку и ищем нужный файл. Скорее всего он там и лежит до сброса программы.

Худший ответ:
Нет
Вопрос: Как удалить плохое фото вк из базы, чтобы его нельзя было найти в findface?

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

Худший ответ:
Не друг он тебе.
Через ТП ВК попробуйте. Отдельный запрос на fineface тоже.
Вопрос: Как сделать не закрываемый экран? React Native и/или Android?

Лучший ответ:
Как при звонке в Телеграм.
у телеграмовского клиента под андроид исходники открыты. Пилите, Шура!

Худший ответ:
гуглите kiosk mode android
первое что вы должны понимать в react native нет ни какой магии - открываем папочку android и там все как обычно 
по вашей задачи важно знать под какие платформы вам нужно делать в старших версиях  android kiosk mode есть в sdk в младших приходилось извращаться или делать приложение лаунчером
Вопрос: В каком виде лучше хранить изображения?

Лучший ответ:
Картинки храните на сервере. 
В базе храните названия картинок и относительный путь до них (если есть несколько директорий для картинок).

Худший ответ:
либо же самому загружать это изображение через форму и потом искать на сервере
Что?
Изображения хранятся в виде файлов, на сервере, иногда на отдельном файловом сервере. В БД хранится запись о изображении. Путь, связи, другая мета информация, если требуется.
Вопрос: Pdd.yandex.ru приходит в спам, как изменить?

Лучший ответ:
Записи DKIM и SPF создаются автоматически только если вы используете DNS от yandex. 
И работают только если ваша почта отправляется через yandex.
Если вы хотите использовать сторонний DNS, то вам необходимо скопировать туда записи с типом TXT (посмотреть их можно, нажав "редактор DNS" в pdd.yandex.ru).
Если же вы хотите отправлять почту с другого сервера напрямую, то придется немного заморочиться, чтобы получить закрытый ключ ( https://tech.yandex.ru/pdd/doc/reference/dkim-stat... ) и настроить подпись DKIM на своём сервере. Проще слать почту через yandex.

Худший ответ:
Поставьте DKIM.
Вопрос: Умный способ восстановления пароля?

Лучший ответ:
Если правильно понял задачу$result = mysql_query("SELECT id FROM account WHERE login='$login' AND mail='$email' AND activation='1' AND login IN (SELECT login FROM char WHERE name='$name')",$db);

Худший ответ:
Если правильно понял задачу$result = mysql_query("SELECT id FROM account WHERE login='$login' AND mail='$email' AND activation='1' AND login IN (SELECT login FROM char WHERE name='$name')",$db);
Вопрос: Почему сначала выполняется JavaScript, а только потом отображается HTML?

Лучший ответ:
Ну вот хром, судя по всему, решил заняться "оптимизациями" и опять пойти против шерсти, то есть стандартов.
Не удивляйтесь, хрому такое не впервой.

Худший ответ:
Вначале парсится html страница. В ходе данного процесса, если встречается тег  парсинг странниц продолжается. Если необходимо выполнить какой то js после того как все загрузится(к примеру надо взаимодействовать с элементами html), то данный код добавляется в callback ивента ready.<script>
window.onload =  function() {    
    alert( 'DOM loaded' );
};
</script>
Более подробно можно почитать тут
Вопрос: Как изменить ширину контейнера при маленьком разрешении?

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

Худший ответ:
У бутстрапа есть такая штука как .no-gutters она как раз убирает отступы.
Вопрос: Таблицы Excel были повреждены или некорректно восстановлены. Как исправить?

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

Худший ответ:
Вы пишите, что это Excel, однако на скрине не открытие, а импорт. И не excel-файла, а текстового/csv. Как вы открываете файл? Какое расширение у него?
Вопрос: Настройка WSS на какой системе удобнее?

Лучший ответ:
Ubuntu или NGINX? 
Windows или фотошоп
Наверно надо погуглить хотя бы все те термины что в вопросе указаны и врубиться что это такое.
А так это набор слов пока что, и ничего конкретного не ответить.

Худший ответ:
Ставите nginx, на нём поднимаете https, создаёте location в котором прописываете прокси на ваш сервис ws, естественно с проксированием заголовков. За примерами идите в гугл с запросом "nginx https" и "nginx websocket proxy", мануалов тонна, 95% из них - копия одного мануала, так что думаю разберётесь
Вопрос: Изменится ли совокупная скорость чтения-записи с HDD-диска при условии работы нескольких процессов?

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

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

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

Худший ответ:
Добрый.Эти страницы не входят в состав категорий, т.к. у них кастомный шаблон
Шаблон страницы тоже можно проверять с помощью функции is_page_template().
Вопрос: Как реализовать притяжение (гравитацию) к земле,при условии что ты не на объекте стоишь?

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

Худший ответ:
Добавляй состояние в духе
onLand = true||false
для Марио
Вопрос: Лучший выбор электронной книги?

Лучший ответ:
Удобно ли читать научные статьи, книги с примерами кода на ридерах диагональю 6"?
Не просто неудобно, вообще невозможно.

Худший ответ:
Лучше брать PocketBook 740. На планшете не такой экран как у ридеров, очень отсвечивает. читать почти невозможно в солнечный день.
Вопрос: Сайт с авторизацией и загрузкой контента на PHP — насколько сложно?

Лучший ответ:
Как сложно? Основная логика, если чистый PHP, делается быстро. То что вы указали по функционалу, если с нуля писать, то пол дня-день.

Худший ответ:
Смотри что я умею, вжух и Google Диск
Авторизация, возможность загружать картинки и не только! Безопасность сохранности относительно хорошая, даже в корп. среде используют.
Вопрос: Как перенести большой объем данных с сервера на сервер?

Лучший ответ:
tar zcf - tobearchived | ssh user@destination_server_ip 'tar zxf -'
Жмёт со сжатием в tar, отдаёт поток сжатого по ssh, на той стороне запускается tar и распаковывает.
В цепочку можно добавить любой архиватор по вкусу.
Для ускорения канала - выкидываем сложную шифрацию в настройках SSH, оставить какой-нибудь RC4, компрессия скорей всего тоже будет только замедлять.
я так дамп сервака делаю периодически :)

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

Лучший ответ:
А через консоль не пробовали?rd /s C:\my_dir

Худший ответ:
Используйте DeepRemove или RoboCopy (стандартная утилита Windows):
Создайте пустой каталог и используйте флаг /MIR, чтобы отразить пустую директорию в проблемной папке. Далее Вы можете удалить пустой каталог обычным способом. Удаление зеркального каталога также удаляет проблемный каталог.mkdir emptyfolder && robocopy emptyfolder .build /MIR
...или просто:
mkdir emptyfolder && robocopy emptyfolder deletefolder /purge
www.numediaweb.com/delete-deep-nested-folders-in-w...
https://blog.bertvanlangen.com/articles/path-too-l...
P.S. Вроде как инструменты IntelliJ IDEA без проблем удаляют такие папки.
Вопрос: Как правильно собрать jar, чтобы запустить как сервис в Linux?

Лучший ответ:
Обычный жарник.
Писать им PID-файл.
Запусать с & в конце. 
Мониторить monitом или писать init-скрипты/systemd-юниты на мониторинг процесса с этим PID

Худший ответ:
Посмотрите на YAJSW, он поможет
yajsw.sourceforge.net
Вопрос: Как убедиться, что пользователь сделал репост в соцсети со страницы сайта?

Лучший ответ:
Если прям очень хочется, то как правильно написал Greg Popov запрашиваем у пользователя права на просмотр его записей (user_posts permission ), смотрим, сверяем.
На практике можно поймать негативный фидбек от людей, т.к лишние права никому не нравятся
+ сильно усложняется обработка (не забываем что пользователь может выборочно отключать права приложения)
PS С учетом того что ничего не запрещает пользователю удалить пост в любой момент после публикации - как то технически контролировать это все смысла ровно 0. Придумывайте маркетинговые стимулы реально делать share.

Худший ответ:
Все это возможно.
Через API все хорошо проверяется в FB и одноклассниках - приходит ответ,  сделан репост или нет, обрабатываем. В ВК столкнулся с проблемами.
Вопрос: Почему скачет autoincrement?

Лучший ответ:
Почитайте dev.mysql.com/doc/refman/5.7/en/innodb-auto-increm... там много нюансов.

Худший ответ:
автоинкремент обычно ставится как max(id)+1.