Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как получить процент от числа в интервале?

Лучший ответ:
Для удобства сдвигаете границы и значение к 0
60 - 40 = 20
50 - 40 = 10
После чего считаете процент числа от верхней границы 10/20 *100% = 50%

Худший ответ:
1. Сначала находите, чему равен 1 процент в исходном интервале: (60-40) / 100 = 0.2.
2. Затем находите величину искомого интервала: 50-40 = 10.
3. Находите величину искомого интервала в процентах: 10 / 0.2 = 50%
Удачи!
Вопрос: Как отправить post запрос?

Лучший ответ:
И у curl, и у requests крошечная документация, которую можно прочитать за две минуты!url = 'https://abc.de/post'
headers = {
    'X-Device-Token': token,
}
data = {
    'sub_id': 123,
    'title': 'test title text',
    'text': 'test post text',
}
r = requests.post(url, data=data, headers=headers)
print(r.text)

Худший ответ:
В интернете есть всё :)ТЫК
Вопрос: Что это за мифические сайты для госучреждений, для которых надо учитывать ie8, ie9?

Лучший ответ:
Типичная ситуация -- в организации сотни или тысячи старых машин под XP. И один-два админа -- сейчас IT-отделы сокращают до минимума. Пример -- "Почта России", в которой до последнего времени использовались устаревшее ПО под XP на слабых компьютерах. Сейчас полностью меняют и железо и софт, потрачены огромные деньги и до сих пор, насколько я знаю, еще не закончили.
А насчет "использовать небезопасно" -- почитайте старую рекламу IE8 :). Дыры продолжают находить во всех браузерах, от увеличения номера версии их меньше не становится.
Вообще, обленились веб-разработчики, забыли уже про IE6, вот это была жизнь -- в этой версии глючит или работает не так, как в других браузерах, почти всё :). И, ничего, делали же сайты.

Худший ответ:
Действительно, что за устаревшая информация. Время идет, мифы сохраняются.
Для сайтов госучреждений нужна версия для слабовидящих по ГОСТ. А IE8-9 означает лишь то, что ТТ составлял дебил.
Пишут про всяких бедных баб Нюр на Windows XP. А малолетнему админу при учреждении установить на машины Firefox или Chrome религия запрещает?
Так что в топку поддержку всего, что ниже IE11 и Edge.
Вопрос: По каким критериям отобрать админа на удалёнку?

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

Худший ответ:
Это зависит от того на сколько вы хотите заморочиться. Варианты:
1) Нанять второго админа что бы он прособеседовал первого.
2) Поднять второй сервер, второй магазин, сломать его или заддосить, попросить админа поднять (за деньги, типа это заказ). Если справится - брать.
Вопрос: Какой софт используют профессиональные писатели и копирайтеры на Windows?

Лучший ответ:
https://alternativeto.net/software/scrivener/
В моей деятельности - OmegaT, но это немного специфические задачи, для сценариев и романов не подойдет.
up для ТС:
я когда-то выбирал себе софт для писательской деятельности. Ничего такого, чтобы вот сразу для души, так и не нашлось. Либо избыточные, либо примитивные. Перешел к категории редакторов с древовидной структурой.В частности, так чтобы для глаза было приятно это у WinOrganizer были программы для заметок - GSNotes. Вот ее можно приспособить для писательства, примитивного. Плюшек там не будет. Но хоть не Ворд. Для хранения всякой мелочи использую CintaNotes и привязал в ней двустороннюю синхронизацию с SimpleNotes - чтобы был доступ, если надо,  ил линукса, планшета и веба. SimpleNotes уж слишком прост, а Синта - офигенно удобная, но только на Винде.

Худший ответ:
Вот отличный редактор, который есть и под Windows и под Linux:
zim-wiki.org
Очень похож на те, которые ты привел в пример.
Вопрос: Где взять практику программисту?

Лучший ответ:
А вы уверены что вы программист?
У меня идеи были раньше навыков программирования и раньше знания языков.
Что программировать даже вопросов не возникало.
Придумывал задачу и писал. Сталкивался с проблемой - брал
дизассемблер, отладчик и смотрел как это решают другие.
Читал исходники чужих широко известных библиотек.
Красивый, понятный, изящный код. Это же кайф, как поэзия!
Практику можно только напрактиковать! :) 
Тренировка во сне - пока что возможна только в кинематографе.

Худший ответ:
скопируй резюме
Вопрос: Как сверстать такой сайт?

Лучший ответ:
SVG + padding/margin в процентахsnippet

Худший ответ:
Секции сделать относительными и давать им большие паддинги и по разному чтобы друг на друга не лезли. Так же нужно регулировать всоту секции по ширине экрана, чтобы было адаптивным. Именно фоновое изображение задавать отдельно а не как фоновое. И вообще еденицы измерения vw, vh в помощь. Так же не помешало бы узнать про свойство изображения object-fit и его значения cover, contain.section{
   position:relative;
padding: 8vh 10vw;
width: 100%;
height: 40vw;
}

img.bg{
possition: absolute;
width: 100%;
top: 0;
left: 0;
}

.content-section{
   z-index: 100;
}
Вопрос: Правила IPTABLES для раздачи с локального DNS сервера?

Лучший ответ:
Указанные 2 хоста находятся в одной сети, роутер не участвует в передаче их трафика

Худший ответ:
Если разобраться
1. Приходит пакет, который мы должны перенаправить на сервер в локальной сети перед принятием решения о маршрутизации
-A PREROUTING -i wlan0 -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.20:53
-A PREROUTING -i wlan0 -p tcp -m tcp --dport 53 -j DNAT --to-destination 127.0.0.20:53
2. Маршрутизация по цепочке FORWARD, но я разрешил проброс в цепочке *filter :FORWARD ACCEPT [0:0]
-I FORWARD 1 -i wlan0 -o wlan0 -d 127.0.0.20 -p udp -m udp --dport 53 -j ACCEPT
-I FORWARD 1 -i wlan0 -o wlan0 -d 127.0.0.20 -p tcp -m tcp --dport 53 -j ACCEPT
3. Меняем обратный адрес пакета
-A POSTROUTING -o wlan0 -p udp -m udp --dport 53 -j SNAT --to-source 192.168.1.11:53
-A POSTROUTING -o wlan0 -p tcp -m tcp --dport 53 -j SNAT --to-source 192.168.1.11:53
4. Все dns запросы идут на локальный dns сервер
-A OUTPUT -o wlan0 -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.20:53
-A OUTPUT -o wlan0 -p tcp -m tcp --dport 53 -j DNAT --to-destination 127.0.0.20:53
192.168.1.11 ip машины, где стоит dns сервер и настраиваю iptables
Так или нет? Где ошибка?
___________________________________________________________________
Решил задачу двумя правилами в цепочке *nat так:
-A PREROUTING -i wlan0 -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.20:53
-A POSTROUTING -o wlan0 -p udp -m udp --dport 53 -j SNAT --to-source 192.168.1.11:53
плюс команда для маршрутов через localhost
sysctl -w net.ipv4.conf.all.route_localnet=1
Всем спасибо за комментарии, помогли дойти до ответа :)
Вопрос: Как быть, если задерживают оплату на месяц?

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

Худший ответ:
Была подобная проблема... Если фриланс, то ничего не остается как просто ждать и надеяться на честность.
Вопрос: Что такое размерность подсети IP (для чайников)?

Лучший ответ:
/10 - длина маски подсети.
Вот на картинке /23 например:
© wiki: Маска подсети
Выдержка из той-же статьи:
/32 это один адрес
/31 это два адреса
...
/24 это 256 адресов
/23 это  512
...
/10 это  4 194 304 адреса
/0 - вообще все адреса ipv4
То есть при блокировке /10 вместе с несколькими адресами телеги РКН заблокировал более четырех МИЛЛИОНОВ "соседей"

Худший ответ:
вот хорошая статья про IP адреса: https://habr.com/post/350878/
Вопрос: Как понять интегрировать дизайн?

Лучший ответ:
Дано: 
1) Дизайн либо в виде исходного файла psd, ai, cdr или уже сверстаный в html+css+js
2) Дана CMS с определенным набором шаблонов.
Требуется: Перегнать готовый макет в удобоваримую для CMS форму. 
Как правило это разрезка готового шаблона на блоки и верстка данных блоков под стандарт CMS (отдельно формы комментариев, публикации, галереи, основной файл куда подключаются блоки и так далее).

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

Лучший ответ:
Как минимум, нужно сделать page и count полями класса.

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

Лучший ответ:
Два NAT-а навстречу друг другу. Естественно, со многими прикладными сервисами будут проблемы, но часть вопросов Вы решите.

Худший ответ:
При одинаковой и пересекающейся адресации никакое взаимодействие двух разных подсетей невозможно. Просто по логике работы стека TCP/IP. Перед отправкой пакетов каждая машина проверяет, не принадлежит ли адрес назначения её сети. И если да -- она будет отправлять её в свою сеть.
Если нужен доступ из одного сегмента в другой, и сети именно локальные -- делайте общую политику адресации, и исключайте конфликты IP-шников. После этого всех в один VLAN, и погнали.
Если же сети удалённые, то в одной из них нужно менять IP-адресацию. Если важно сохранить подсеть 192.168.1.0 -- делите её на две части, загоняя машины из одного сегмента в адреса 192.168.1.1-192.168.1.127, а второго -- в 192.168.1.129-192.168.1.254, и ставьте везде маску 255.255.255.128. Тогда можно будет настроить машрутизацию.
Вопрос: Как добавить уникальный id?

Лучший ответ:
$(".class").attr({id:"uniqueId"});
Или так:$(".class").each(function(i){
$(this).attr({id:"uniqueId_"+i});
});

Худший ответ:
$(".class").attr({id:"uniqueId"});
Или так:$(".class").each(function(i){
$(this).attr({id:"uniqueId_"+i});
});
Вопрос: Как включить в ядре linux поддержку pppoe (debian jessie или archlinux)?

Лучший ответ:
если надо ставить через pppoe, то надо опцию добавлять при установке: https://www.debian.org/releases/stable/i386/apds05.html
если уже дебиан стоит или что там на pi? raspbian ?
вам нужно поставить пакет pppoeconf, который потянет с собой пакеты ppp и pppoe
потом от рута запускаете pppoeconf и через него настраиваете
ядро пересобирать не надо

Худший ответ:
Пересборка ядра описана тут: www.unix-lab.org/posts/debian-kernelДля подобного дела нужно сначала подготовиться. А именно заняться установкой следующих пакетов:$ sudo aptitude install  build-essential kernel-package fakeroot initrd-tools pkg-config libncurses5-dev ( и `linux-source` - для тех, кто перекомпилирует имеющееся ядро)
Если вы решили ставить новое ядро, то идём на kernel.org или зеркало yandex — mirror.yandex.ru/kernel.org/linux/kernel/ — и скачиваем необходимую версию ядра. У нас это linux-3.0.4.tar.bz2.
Смотрим есть ли пакет linux-source в каталоге /usr/src. В случае с перекомпиляцией он будет, если вы скачали новое ядро, то переместите его туда.$ ls /usr/src/
linux-source-3.0.4.tar.bz2
Переходим в каталог и распаковываем архив:$ cd /usr/src
$ sudo tar xjf linux-source-3.0.4.tar.bz2
Идём в созданную после разархивирования директорию:$ cd linux-source-3.0.4/
Теперь можно заняться конфигурированием ядра. Автором это было сделано в консоли с остановленным X-Window. В таком случае пишем от рута:# make menuconfig
Если желаете конфигурировать в графическом терминале, вам послужит команда# make xconfig
Но понадобится установить дополнительные пакеты/библиотеки, в общем ну её….
С конфигурацией закончили?
Тогда собираем наше новенькое ядрышко:
#fakeroot make-kpkg --initrd --revision=debian.3.0.4 kernel_image
Вопрос: Как сделать такую анимацию(а-ля снегопад)?

Лучший ответ:
анимация не сложная, не знаю на счет скриптов, но обрати свое внимание на библиотеку animate.css , если там нет решения то попробуй на keyframes, делаеш смещение через  transition, а потом уменьшай прозрачность через opacity.
---------------------------
понимаю, что для каждой "снежынки" такое прописывать бред) но я пока что так вижу решение твоей задачи

Худший ответ:
Можно заморочиться и сделать всё с помощью keyframes.
Можно попробовать с помощью GSAP
Вопрос: Ремонт и прошивка оперативной памяти. Возможно ли, и кто этим занимается?

Лучший ответ:
В таких случаях сбойную планку выкидывают

Худший ответ:
в планке памяти есть маленькая флеш (мелкий тараканчик на отшибе), в которую прописаны параметры памяти, ее можно перепрошить.
Если сбоит один из модулей, то перепрошивка не поможет. т.к. они "стоят" паралельно, забирая на себя 1/8 (или 1/16 и т.д.) ширины шины данных, и равномерно распрделены вдоль всей памяти.
а вот если мемтест выявит ошибки локально, ну к примеру все ошибки выше 4Gb, то можно перепрошить флешку, чтобы планка памяти представлялась системе 4 Gb и ячейки памяти выше 4 Gb, среди которых и сидят битые, не использовались.
можно попробовать аккуратно прожарить чипы (гугли "прожарить нвидиа"), это наврядли поможет, но будет интересным опытом.
для линукс ядра был патч, который заставлял менеджер памяти не использовать определенные блоки памяти, но вот поставится ли этот патч на современные ядра вопрос.
тут проблемма в другом - если посыпались ячейки памяти, то скорей всего посыпятся и другие.
Вопрос: Можно ли плохим контроллером SATA-USB 3.0 убить жесткий диск?

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

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

Лучший ответ:
Переменная не состоит из других переменных. Она состоит из значения и никак не связана с другими переменными.
После:
int varSum = var1 + var2 + var3;
в варСум будет сумма ЗНАЧЕНИЙ переменных var1-var3 и никакой связи с ними не будет.

Худший ответ:
static int varSum = var1 + var2 + var3; здесь varSum объявлена и инициализированна, т.е. здесь она уже 15.System.out.println(varSum); здесь вы просто выводите ее значение в консоль.В данном случае после присвоения var1 = 50; нужно 
будет вставить varSum = var1 + var2 + var3; тогда результат будет 
15 и 60. да. вы заново вычислите значение varSum.Может быть, есть какой-то метод заставляющий переменную varSum 
пересчитать себя без переинициализации? Это будет уже не инициализация. 
Но нечто похожее можно реализовать с помощью например javafx Property
Вопрос: Миграция гостя (Linux) из Hyper-v Gen2 в Proxmox VE 5, как?

Лучший ответ:
Попробуйте конвертер от Starwind

Худший ответ:
Решилось изменением efi на bios и и установкой/обновлением загрузчика.
Вопрос: Для чего нужны замыкания (js)?

Лучший ответ:
Ну если доступным, языком, то тогда на примере.
Например, надо выводить в лог сообщение, а также номер строки и время прошедшее с момента зарузки страницы.
Если не использовать замыкание, то надо определить следующую функциюfunction log(timespan, lineNumber, msg) { 
   console.log(linNumber + " " + timespan + " " + msg;
}
и две переменныеvar start = Date.now();
var lineNumber = 1;
Вызываем log такlog(Date.now()-start, lineNumber++, "один");
log(Date.now()-start, lineNumber++, "два");
Очевидно, что это неудобно.
Если использовать замыкание, то пишем такvar log = (function () {    // функция 1
   var start = Date.now();  // текущее значение сохранятся в start 
   var num = 1;             // также используется в замыкании в функции 2. 
   return function (msg) {  // функция 2 - сохраняется в var log
      console.log(num++ + " " + (Date.now()-start) + " " + msg);
   }
})();    // () -- вызываем функцию 1
Вызываем такlog("один");
log("два");
РезультатlineNumber   timespan     msg
------------------------------
1            0            один
2            1            два
Т.е. замыкание — это способ передачи данных в функцию.
Подробнее о замыканиях см Mozilla Developer Network
Примет взят отсюда

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

Лучший ответ:
1. Есть другие способы защиты.
2. Есть каптчи, которые не видны пользователю (https://www.google.com/recaptcha/intro/)
3. Бывает лишней

Худший ответ:
Капча - убийца конверсии!
Фильтры - наше всё!
Банально даже: stumper.ru/use/isText для исключения линков.
Вопрос: Файлова структура сайта, не — на CMS !?

Лучший ответ:
Если речь идет про какой-нибудь небольшой сайт на 3-4 страницы, то ничего критичного нет.
Если речь идет про каталог - то это вообще не крутая идея, делайте на CMS как минимум для удобства редактирования контента.

Худший ответ:
Советую сделать footer и header и прикеплять их к страницам с помощью <? include('header.php')?> (кажется так на php пишется)
Вопрос: А какая архитектура reactjs/redux приложения у вас?

Лучший ответ:
Есть два хороших подхода к организации кодовой базы, которые подходят для большинства проектов: File Type First и Feature First:Пример Feature First
Проект:/common
  /api
  /components
  /ducks
  /entities
  /sagas
  /selectors
  /utils
/features
  /Feature1
  /Feature2
  /Feature3
  /Feature4
  ...
  /FeatureN
/Main
  /pages
  index.js
  App.js
  routes.js
  rootReducer.js
  rootSaga.js
  store.js
/Auth
  /pages
  index.js
  App.js
  routes.js
  rootReducer.js
  rootSaga.js
  store.js
...
Отдельно взятая Feature:/features
  /Accounts
    /components
    index.js
    accountsDucks.js
    accountsSaga.js
    accountsSelectors.js
    accountsApi.js
    Accounts.js
    AccountsContainer.js Пример File Type First/actions
/common
/components
  /core
  /Feed
  /Profile
  ...
/constraints
/containers
/entries
/locales
/pages
/reducers
/utils
...
Оба подхода при умелом использовании они отлично масштабируются, поддерживаются и не вызывают проблем при рефакторинге.
Дата мапперы в зависимости от задач можно использовать в редьюсерах, в mapStateToProps и asyncActions. Главное чтобы по проекту все было стандартизировано.
В mapStateToProps пишут преобразования необходимые лишь для одного компонента.
Большое количество бойлерплейта это плата которую вы платите за использование redux. Можно писать все константы и редьюсеры руками, можно использовать библиотеки вроде redux-actions и ей подобные. В первом случае вы получаете плюс к гибкости, читаемости и статическому анализу, во втором меньше кода. Я в большинстве проектов предпочитаю первый вариант. Так же создаю шаблоны файлов в Webstorm для asyncActions, contstraints, редьюсера, страницы, компонента и законнекченого компонента. 
В специфичных проектах с множеством CRUD запросов и похожих сущностей есть смысл написать CRUD Boilerpalte.

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

Лучший ответ:
С помощью navigator.mediaDevices.getUserMedia() получаешь MediaStreamВыводишь MediaStream в videoСоздаёшь canvas и рисуешь на нём текущий кадр из videoПреобразуешь canvas в blobСоздаёшь FormData и добавляешь в него blobОтправляешь FormData ajax-запросом на серверНа сервере обрабатываешь запрос как обычную загрузку файла
P.S. Скриншотом называется снимок экрана. Снимок сделанный камерой - это не скриншот.

Худший ответ:
JSом отправляешь снимки на ручку API, которую ты написал на джанге. Она принимает и сохраняет файлы.
Вопрос: Как на основе исходного кода сделать консольное приложение?

Лучший ответ:
Они предоставляют исходники на c#. Отлично! Загружаем проект, дописываем свой метод - точку входа. Компилируем.

Худший ответ:
Создаем консольное приложение.Добавляем пакет.Пользуемся.
Вопрос: Как Yii2 перед 404 ошибкой проверить URL в контент страницах?

Лучший ответ:
В конфиге приложения можно переопределить экшен для ошибок и в нем описать любую логику. 'errorHandler' => [
            'errorAction' => 'somecontroller/someaction',
        ],
www.yiiframework.com/doc-2.0/yii-web-errorhandler....
Только не совсем понятно что вы имеете в виду под "проверить в контент-страницах".

Худший ответ:
Здравствуйте.
--
я так понимаю, что ссылки вы формируете не по id, а по некоему столбцу в БД, который имеет строковое значение.
так вот, если вы делаете get-запрос, то лучше это делать так:// код action
...
public function actionName($link= ''){ // обращаемся к той переменной, которая выводит get
$model = Catalog::find()->where(['link' => $link])->one(); // обращаемся к БД с вопросом, есть ли такая запись
if ($link == NULL) {return $this->redirect(['catalog']);}  // если нету, то делаем редирект*
...
---
* - если вставить последнюю строчку, вы избегаете страницы 404, метода случайных подборов на несуществующие страницы, а следствие, мешаете хакерам с инекциями, пользователь остаётся на сайте, и может выбрать что-то другое, а не пытаться понять, что значат эти три цифры. Не выводится страница с пустыми гет запросами, что очень важно!!! Редиректить можно куда угодно, куда укажете. 
Буду рад знать, что помог.
Вопрос: Для чего нужно ООП?

Лучший ответ:
Для управления сложностью.
https://habrahabr.ru/post/169487/
Все что сделано при помощи ООП можно написать и в процедурном стиле, например, но чем сложнее проект тем сложнее будет во всей этой каше разобраться. Весь смысл ООП - разбить большущую сложную систему на кучу отдельных ПРОСТЫХ объектов, методов, сущностей. 
А еще с ООП неразлучна абстракция. Чтобы можно было одну часть программы выбросить и подменить на другую.
Сегодня у нас выводится на веб-страничку, по которой кликают мышкой, а завтра не мышкой - а тач пальцами. А послезавтра вообще в VR шлем, и управление голосом. И если система правильно спроектирована - ее не придется переделывать ПОЛНОСТЬЮ, а только ту часть, которая ответственна за ввод/вывод.

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

Лучший ответ:
C любого live CD грузитесь, хоть hirens boot cd на mini xp, хоть любой линукс. И файловым менеджером копируете всё что нужно.

Худший ответ:
Можно проанализировать этот диск программой для восстановления данных - https://hetmanrecovery.com/ru/hard_drive_recovery/... Утилита считает информацию в обход прав на доступ к файлам. После этого "восстановите" файлы на другой носитель.
Вопрос: Каковы правовые риски бесплатной публикации своего перевода книги, защищённой авторскими правами?

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

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

Лучший ответ:
это называется паралакс

Худший ответ:
Это обычный параллакс, можно найти готовый плагин, которых куча в интернете, а можно самому написать:
1. Сделать отдельный элемент под картинку на фон
2. Создать переменную в которой будут данные о том, сколько проскроллил пользователь пикселей вниз 
3. Задать элементу translateX со значением в виде нашей переменной / 2 к примеру
Вопрос: Как сделать проверку BETWEEN между бОльшим и меньшим числом?

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

Худший ответ:
Можно вынести в скалярные переменные
Что-то вродеDECLARE @minValue INT, @maxValue INT;
IF (@v1 < @v2) 
BEGIN
   SET @minValue = @v1;
   SET @maxValue = @v2;
END
ELSE
BEGIN
   SET @minValue = @v2;
   SET @maxValue = @v1;
END

SELECT *
FROM table
WHERE v BETWEEN @minValue AND @maxValue
С поправкой на синтаксис MySql