Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Какой кнопочный телефон удобно программировать на Java?

Лучший ответ:
Может стоит посмотреть в сторону esp32,  arduino и т.п.?

Худший ответ:
Nokia 5310 - самый маленький телефон в истории компании и с поддержкой java.  К тому же есть сеть - jprs.
Вопрос: Какая стабильная версия OpenCart?

Лучший ответ:
Opencart 3.x
Я бы просто скачал последнюю версию Opencart 3.0.3.8 (August 27, 2021) и будет вполне себе стабильная проверенная, https://www.opencart.com/index.php?route=cms/download
Если на русском то тут адаптировали люди https://forum.opencart-russia.ru/threads/russkaja-...

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

Лучший ответ:
Какой формат более эффективен с точки зрения обучения и образования? Что говорит ваш опыт по этому поводу? 
Никакой, так как программирование 1 час = это вообще ничто, бывает в сложном проекте 1 час просто дебажишь ошибку, из-за большого количества плохого кода, а у новичков процесс обучение + дебаг своего же = умножить на n.

С английским так же - что бы выучить английский нужно,
а) жить в стране носителя языка, что бы 24\7 общаться и ассимилироваться в нем, либо
б)включить во все аспекты жизни английский язык - хобби, работу, просмотр\прослушивание музыки, фильма, книги и тд.

Хотите стать мастером какого либо дела - 8-12 часов в день, и через какое-то время после тяжелого отрезка непонимания и отрицания = плоды будут, но вот только сколько лет вам понадобится на это, 1 год или 5, зависит от наследуемых свойств или задатков + вашего личного старания.

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

Лучший ответ:
Судя по данным GPS, на что лично я бы обратил внимание в первую очередь:

1) включите кэш браузера.
Это делается в htaccess + на стороне хостинга должно быть включено. Проще всего если ISP панель используется. Ставьте срок 365 дней. Если лень разбираться просто напишите хостеру: прошу поставить кеш браузера для всех статических элементов (картинки, шрифты, стили и т.п.) на 365 дней. Нормальный хостер сделает бесплатно или подскажет где сделать. Если хостер ненормальный, то попробуйте сами всунуть правила в htaccess (они если погуглить - найдутся, просто их много разных вариаций, надо пробовать какие подойдут к конкретному хостингу)

вообще это самый простой пункт обычно.

2)  Настройте подходящий размер изображений
Тут тоже все просто - у вас фотка большая, а стоит она в мелком квадрате. Зачем? Поставьте туда мелкие фото. То есть просто сохраните их в редакторе с меньшей шириной и высотой.

3) Удалите неиспользуемый код JavaScript - ничего вы тут толком не сделаете.
скрин i.imgur.com/qEbmxsh.png - все скрипты что можно укажите async - вот как в первом сделано. И проверьте чтобы страница норм отображалась.

4) рекомендую выкинуть шаринг, скрин i.imgur.com/6z5kK1d.png - им обычно уже не пользуются, а он влияет на page speed

Хотя бы так, думаю, баллов 10-15 может дать такая штука.

Худший ответ:
ForSureN1, Технические вещи, которые выдает гпси относятся к нескольким специалистам сразу: Админу, в части настроек сервера, в том числе настройках кэширования статики, Фронтенду, по оптимизации кода и изображений, и Бэкенду, по оптимизации кода, чаще всего относящемуся к скорости запросов в бд, где обычно и происходит затык. 

В вашем случае часть работ лежит на админе, в частности 
Сократите время до получения первого байта от сервера
Задайте правила эффективного использования кеша для статических объектов

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

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

Худший ответ:
А теперь развейте вашу мысль с классами MySQLBase и класс MSSQLBase.
Вы хотите сделать универсальный адаптер, который будет работать с любой БД. Он принимает на вход ссылку на IBase и спокойно вызывает метод ConnectToBase, не заботясь о том, что там в реальности MySQLBase или MSSQLBase.
Вопрос: Атака конкурентов на сайт?

Лучший ответ:
Через какие сервисы видите эту картину? На вирусы проверяли? На какие страницы идет левый трафик? Пока посмотрел на сайт и ничего странного не нашел. Больше похоже, что вы пытаетесь ссылку на свой ресурс здесь оставить.

Худший ответ:
Если речь идет о накрутке ботами с поисковых систем через мобильные прокси, то спешу вас расстроить действенного лекарства от данного метода нет! Вы не можете закрывать мобильные подсети массово, так вы начнете терять трафик. Из методов это всплывающее окно цель которого проверка входа на предмет бота. Но как показывает практика все существующие методы крайне не эффективны.
Вопрос: Windows 10 не видит SSD-диск, на котором установлена Ubuntu 20.04. А из Ubuntu иногда не могу получить доступ к файлам Windows. Как исправить?

Лучший ответ:
Windows не поддерживает файловые системмы линукса - поэтому нет доступа из винды.
Насчет прав доступа из линукса - лучше разбирать какой-то конкретный случай.

Худший ответ:
Windows 10 не видит SSD-диск, на котором установлена Ubuntu 20.04
Это нормально, никто и не обещал, что кто-то кого-то будет видеть. 
Мастдайка оборачивается к СПО только там, где деньгами пахнет.

А из Ubuntu иногда не могу получить доступ к файлам Windows.
А это бывает, если винды сами на диске напортачат и пометят его как требующий проверки. Тогда линь его не трогает, от греха. Запускаешь из-под виндов чекдиск - и все работает. Ну, и выключать винды корректно надо, чтобы тот NTFS не оставался в таком "непроверенном" состоянии. Или не включать вовсе - тогда и проблем не будет...
Вопрос: Возможно ли домен и поддомен привязать к разным серверам?

Лучший ответ:
Обратитесь в службу поддержки того места где редактируете ДНС зону
А записи разных доменов независим друг от друга

Худший ответ:
Вопрос разрешен. Техподдержка reg.ru оказалась компетентнее своих консультантов на горячей линии.
Мне основной www-домен создали как поддомен со своей папкой и ссылкой на эту папку, где я установил Wordpress и добавили две текстовые записи. 
Остался на их бесплатных серверах ns1.reg.ru/ns2.reg.ru и ввел соответствующие записи:


Теперь и к cms есть доступ у хостера и основной домен ссылается на GitHub.
Спасибо за рекомендации Виктор Таран и Яков Светский
Вопрос: Как правильно контролировать IP адреса используемые виртуальными машинами?

Лучший ответ:
Ставьте вирт роутер, например микротик, pfSense...
И к ним подключайте ВМ. Там уже рулите как советуют привязкой по мак итд

Худший ответ:
Есть хост с установленным Proxmox, и блок IP адресов для ВМ. Условно 1 ВМ = 1 Клиент.
а как VM получают IP? если он вручную прописан, то беспокоиться не о чем.
Вопрос: Почему не работает https?

Лучший ответ:
потому что само-подписанный сертификат твой броузер не знает. попробуй использовать let's encrypt, если это сервер, который смотрит наружу в интернет, или добавь сертификат в список доверенных, если это только сервис локальной сети

Худший ответ:
Покажите как вы создали сертификат и где прописан айпишник. Он должен быть в SAN поле
Вопрос: Зачем заземление в детекторном приемнике?

Лучший ответ:
цепь должна быть замкнута. Это верно. Чтобы по эл. цепи шёл ток, она неизбежно должна иметь топологию замкнутого кольца.
Замыкается она в этой схеме, как я думаю, через емкость антенны и земли (получается, что одна обкладка конденсатора - антенна, вторая - земля).Это тоже верно.
Но что мешает течь току по цепи антенна - колебательный контур?Сформулировано невнятно. Так или иначе, цепь антенны замыкается через ёмкость между антенной и заземлением, или второй половинкой антенны, если она симметричная (как на СВЧ).
почему в обычных радиоприемниках мы не наблюдаем проводов, идущих в землю?В радиоприёмниках с питанием от электросети роль заземления играет эта самая электросеть, поскольку ёмкость между обмотками питающего трансформатора довольно значительна.  А для аппаратов с короткой выдвижной антенной заземлением является его корпус или тело человека, держащего аппарат в руках. Чрезвычайно малая эффективность такой антенны компенсируется высоким усилением приёмника.
что мешает поставить рамочную антенну, которая сама будет замыкаться на себя?Это самый интересный вопрос, требующий развёрнутого ответа.
Детекторный приёмник не имеет усилителей и располагает только той энергией, которая пришла с принимаемым сигналом. По этой причине в нём применяется т.н. "открытый" колебательный контур, ёмкостная часть которого должна охватывать большое пространство - энергия собирается из объёма между антенной и землёй (единицы и десятки кубометров). Для электрической составляющей ЭМ-поля собрать побольше энергии нетрудно, достаточно разнести антенну и заземление пошире (разумеется, с учётом требуемой ёмкости и добротности контура). С антенной, принимающей магнитную составляющую ЭМП (т.е. рамочной и ферритовой), это сильно сложнее по конструктивным соображениям - достаточно представить себе рамку объёмом несколько кубометров.
Так что применить магнитную антенну в детекторном приёмнике мешает её малая эффективность - усилителя в нём нет, и нечем её компенсировать.

Худший ответ:
Без заземления сигнал слишком слабый.
Вопрос: Что делать если установка win10 зависла на последнем шаге?

Лучший ответ:
Это нормально. 
качаются и ставятся обновления и процесс ну ОЧЕНЬ долгий. Сам несколько раз на этом случайно ловился
Мой совет:
При установке Windows 10 не подключайте Интернет и соглашайтесь на ограниченную установку, которая появляется при отсутствии Интернета!
Только потом, когда появится рабочий стол, подключайте WiFi или провод, подключайте учётку Microsoft и прочие плюшки

Худший ответ:
Если Вы ставите НЕ лицензию - лучше ставить версию LTSC

А так - переустановите, не вводите облачную учетку(зачем она вообще в винде? ) и создайте локальную. там есть это, на экране учетки
Вопрос: Как в столбец SQL-таблицы записать массив?

Лучший ответ:
Не надо в столбец записывать массив, это идёт в разрез с принципами работы реляционных баз данных и нарушает нормализацию.

Худший ответ:
$a = ['first' => 1, 'second' => 2, 'third'];
$a = json_encode($a);
Записываете $a в базу. А когда достаете, делаете 
$a = json_decode($a);
и получаете свой массив. 

Так, пожалуй, проще всего.

Если этот ответ вам покажется верным, то отметьте решением ответ от mletov, он написал, по сути, то же самое, но с упоминанем xml варианта.
Вопрос: Всегда ли выполняется выполняется блок finally?

Лучший ответ:
finally всегда выполняется

А зачем вопросы? Я джаву в глаза не видел, но проверить же минутное дело
кейс 1 (исключение перехватывается на том же уровне)


кейс 2 (исключение вылетает на уровень выше)



Худший ответ:
Автор правильно пишет. Если исключение выбросится на строке lnputFile in = new InputFile("Cleanup.java")j, то оно попадёт сразу в catch(Exception e) { System.out.println("Ошибка при конструировании InputFile"); }. Здесь finally не выполняется, так как исполнение кода не заходит в try блок, к которому прикреплён тот finally.

Но если исключение стрельнет где-то внутри цикла while((s = in.getLine()) != null), то сработает внутренний catch блок и finally блок. Внешний catch не будет выполнен.

А если в блоке try либо catch выполнить System.exit() ?
В таком случае finally блок не будет выполнен, так как javadoc System.exit() чётко пишет: "This method never returns normally." А раз метод не возвращает управление, то try блок не выполняется до конца, соответственно finally не запускается.
Вопрос: Как организовать доступ по сертификату на сервер?

Лучший ответ:
Авторизация клиентов в nginx посредством SSL серти...

Худший ответ:
- Создать CA
- Выпустить в нем сертификаты для пользователей
- Настроить на сервере требование сертификата от определенного CA (вашего)
- Раздать юзерам сертификаты
- Предупредить об ответственности за имперсонацию (когда некто, знающий пароль от юзерского логина, получает доступ к профилю, в котором установлен сертификат и заходит на сайт, как если бы он был правильный юзер, то есть требование сильного пароля никто не отменял)
Вопрос: Как определить тип функции для шаблона?

Лучший ответ:
Коль речь идет о шаблонах и желательно избавиться от  int, не лучше ли воспользоваться шаблоном?
template <class T, template <typename> class mc>
class property : public mc<T> {
public:
    property& operator= (T arg)  {
        this->Setter(arg);
        return *this;
    }
    operator T() {
        return this->Getter();
    }
};

template<class T>
class Test {
protected:
    T Getter() {
        std::cout << ("GET\n");
        return n;
    }
    void Setter(T arg) {
        std::cout << ("SET\n");
        n = arg;
    }
    T n;
};

int main() {
    property<int, Test> x;
    x = 10;
    std::cout << "Hello World! << "<< x << "\n";
    
    property<float, Test> y;
    y = 5.3f;
    std::cout << "Hello World! << "<< y << "\n";
}

Худший ответ:
Можно использовать typedef int value_type; в классе с Setter/Getter.

Тогда в вашем шаблоне вы можете использовать C::value_type. Так в STL, например, сделано.

Плюсы: не надо обязательно заводить n. Можно обзывать его как удобнее или оно может вообще иметь другой тип, если свойство хранится неявно.

Минусы: Надо обязательно заводить этот самый value_type и обновлять его вместе с методами Getter/Setter.
Вопрос: Как в сети Windows отобразить машины, подключённые по VPN?

Лучший ответ:
Никак. 

M$ посчитало, что "Сетевое окружение" устарело и тупо выпилило этот фукнционал. Даже поднятый WINS, раньше решавший эти проблемы - нифига не дает. Сейчас оно работает, как работало в Windows 95 - только локальный сегмент. Если прям сильно-сильно необходимо - придется тащить eoip туннель и делать вид, что это все - одна локалка.

Худший ответ:
Настроить proxy-arp на ВПН сервере, прописать там и тут правильные маршруты...

короче проще IP вбивать руками или ярлыки сделать. либо уж полноценно объединять 2 сети
Вопрос: Быстро разряжается ASUS TUF Gaming FX506LH-HN004?

Лучший ответ:
Смотрите нагрузку на проц и видяху. Может он дискретку не умеет отключать
Поставьте драйвера на ноут с сайта производителя
Вообще я сомневаюсь что он будет «жить» больше 1,5-2х часов

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

Лучший ответ:
https://en.m.wikipedia.org/wiki/Geo_URI_scheme

Пример:
<a href="geo:37.786971,-122.399677;u=35">Wikimedia Headquarters</a>

Такая ссылка будет триггерить приложения подписанные на работу с геолокацией (карты, сервисы такси и и.д)

Худший ответ:
Есть такая штука: geohash.org/vcg0 - например, в этой ссылке хеш vcg0 соответствует координатам N55.0 E83.0
Вопрос: Оцените сборку пк для программирования и геймдева?

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

Худший ответ:
ты не сказал сколько всё это денег стоит

бери аймак - любой, на какой денег хватит
или мак мини + монитор
Вопрос: Каким образом upwork узнает мое местоположение?

Лучший ответ:
Проверьте VPN на различные утечки: 
- DNS
- IPv6
- WebRTC

Если на одном/или всех тестах покажет реальный IP, то исправляйте утечку и ваш реальный IP будет скрыт. Если утечек нет, то проблема может быть глубже, например, как вам указали - язык системы/браузера, часовой пояс и даже gelocation tracking.

Худший ответ:
у  меня такой вопрос
Я могу как-то пройти верификацию с паспортом другой страны?
У меня допустим молдавский паспорт и я переезжаю в америку и хочу чтобы у меня в профиле было не молдова страна а USA.Кто-то знает такое вообще как-то возможно?И не будет ли проблем при верификации
Вопрос: Какие еще преимущества у юнит-тестов, кроме того, что они отлично обеспечивают регрессионное тестирование?

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

Описанные недостатки — очень спорные. Метод пристального взгляда находит баги только в первые 10 минут, пока голова свежая.

Но да, с тем, что автотестами нужно покрывать не всё, я лично полностью согласен. Вдобавок, часто высокоуровневые функциональные или end-to-end тесты писать проще, а для проекта они полезнее. Тут надо искать баланс для себя. И еще в это уравнение добавить ручное тестирование. Какой-то общей формулы, понятно, нет.

А вопрос-то ваш в чём? Пока выглядит как «вы тут меня поуговаривайте писать тесты, а я вам буду объяснять, почему не буду этого делать». Не хотите — не пишите. Если для вашего проекта и для вашей команды тесты не несут большой пользы, то и не пишите их.
Судя по вашим прошлым вопросам, вы считаете, что всё знаете лучше других, соответственно, вопрос нужен, чтобы потешить ЧСВ? Ну или вы нарвались на какой-то карго-культ-секты-стопроцентного-кавереджа? В таком случае — сочувствую.

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

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

Худший ответ:
Что бы ОС не "шпионили". так как некоторые опасаются что система может скрыто снимать пользователя и передавать данные куда-либо. Либо какие-нибудь программы скрытно пользоваться встроенной камерой.
Вопрос: Я похоже болел когда была тема конкатенации, что ему нужно от меня?

Лучший ответ:
Использовать разные имена.

Тут bet - функция
def bet():

Здесь это уже число
bet = int(bet_in)

Худший ответ:

def bet():
    bet_in= input('Сколько ставишь:') #!!!проверить незарегистрированного пользователя!!!
    bet = int(bet_in)
    check_bet(bet)
    get_bet(bet)
    reply()


def check_bet(bet):
    u_id, u_name, u_bank = user_data(id_in)
    int_bank = int(u_bank)
    int_bet = int(bet)
    if int_bet > int_bank:
        print('Ты не можешь столько ставить, твой банк: ' + str(u_bank))
        bet()


Вместо перестановки int и str по переменным надо просто включить голову и посмотреть на этот кусок "кода"
Вопрос: Как просматривать запущенный процесс python на bash консоли хоста?

Лучший ответ:
запускай
screen
python
потом закрывай сессию

потом подключаешься и 
screen -r

а еще потратить минут 10 на чтение man screen

Кроме screen есть еще tmux, но его надо ставить отдельно.

А еще, правильный способ через nohup
nohup python myscript &

Худший ответ:
А как запрускаете ?
можно в screen/tmux запускать и всегда можно будет глянуть аутпут, хотя это так себе решение.
Надежней все же через systemd. Там будут и логи, и слежение за ботом, и перезапуск если вдруг упадет
Вопрос: Почему не обновляются DNS-записи линуксовых машин в AD?

Лучший ответ:
По умолчанию машины в сети сами обновляют dns записи. Видимо у Linux машин нет прав на свои dns записи. Создайте сервисный Аккаунт с членством в dnsupdateproxy группе, и добавьте его в настройки dhcp сервера. Все dns записи будут создаваться от имени сервисного аккаунта и dhcp будет иметь права на dns

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

Лучший ответ:
Для фронтенда можно даже в блокноте писать.
Так что любой хлам подойдёт

Худший ответ:
Не слушайте геймеров в треде. :)
Возьмите больше памяти: запас карман не тянет.
Откажитесь от HDD: вы будете чаще иметь дело с россыпью мелких файлов, лучше ssd.
Кулер это лишняя трата денег, боксовый отлично охладит ваши мизерные нагрузки.
Блок на 600 это оверкилл, можно взять на 400 и ничего не потерять.

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

Лучший ответ:
Можно

Худший ответ:
Даже если он у тебя не будет толком работать. Т. е. что-то одно не будет выполнять из заявленного функционала: 
- скрытность от антивирусов. Не зря про ехе упомянул, значит под винду заточенность;
- саморепликация;
- возможность распространения по почте;
- возможность распространения по сети;
- встраивание кода в примитивные программы (cmd.exe,...)
- основной функционал - майнер крипты.
И всё это на ASM. Думаю, грамотные люди из органов, предложат тебе контракт во ФСТЭК, а не срок в ФСИН.
Вопрос: Откуда файлы на рабочем столе пользователей домена AD?

Лучший ответ:
что, уволили админа со скандалом?

Худший ответ:
1. смотри C:\Users\Public\Desktop для начала, может там говна умотаться
2. смотри групповые политики
3. смотри на предмет перемещаемых профилей в настройках пользователей, а так же изменены размещений попки Desktop. Ее можно переместить куда угодно, хранить например в шарика не на компе, а там уже напичкать говнищем...
Еще можно посмотреть планировщик, может так обиженный админ поднасрал...
Вопрос: Переменная rèturn и прочие зарезервированные слова, норм?

Лучший ответ:
Думаю, что в любой нормальной команде за это могут избить.

Худший ответ:
myReturn, returnGoods, return_goods, action_return

что с фантазией, что додумался только до è ?
Вопрос: На сколько хорош данный roadmap для PostgreSQL DBA?

Лучший ответ:
Его написал мой коллега https://github.com/kamranahmedse/roadmap.sh/pull/196 Алексей Лесовский после сбора фидбека со всей нашей команды DBA. Так что вряд ли раскритикую год спустя.

"конца" у roadmap нет. troubleshooting и optimization бесконечны. А уж тем более необъятна hackers тематика.

Если заходить со стороны разработки - создайте маленькую базу неважно какой тематики (да хоть q&a сервиса), заполните сгенерированными данными гигабайт на 10-100 и заставьте это шевелиться за вменяемое время под синтетической нагрузкой (хоть pgbench). А потом начните менять схему данных, не останавливая нагрузку. А потом восстановить базу на состояние до миграции из бекапа.

Худший ответ:
Редкая птица долетит до конца roadmap. Начинайте свой проект и параллельно прокачивайте скиллы.
Для начало достаточно уметь установить в базовой конфигурации, подключиться к серверу и освоить базовый SQL.
Вопрос: Как увеличить FPS в системе?

Лучший ответ:
Как увеличить FPS в системе?
Ты уже задавал этот вопрос в комментариях к предыдущему вопросу, там есть ответ:

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

Худший ответ:
Для копирования из временного буффера в видимый, я использовал инструкцию rep movsd, хоть и знаю, что до i286 включительно такой инструкции нет. Вопрос: как повысить число кадров в секунду?
Без тонкой диагностики нут - нельзя. Я не знаю как в геймдеве но в других отраслях при возникновении проблем самое первое что делают - меряют время. Можно мерять профайлером но это явно не твой вариант.

Найди себе сверх-точные часы которые меряют наносекунды (ты-же ассемблерщик?) Померяй сколько занимает rep movsd. Меряй не один раз а хотя-б много итераций и бери среднее. Может быть не в этом твоя проблема с fps, а где-то в другом коде.