pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Как на php ставить задачи в очередь например при парсинге сайта?

Лучший ответ: Подобная задача решается через т.н. брокеры сообщений (Message broker). Есть несколько возможных вариантов, к примеру выделенные сервера, реализующие протокол AMQP (например RabbitMQ, ActiveMQ и другие), стриминговые сервера (к примеру Kafka), сервисы очередей (Amazon SQS и подобные), а также другие реализации паттерна PubSub, к примеру в Redis.
Идея состоит в том что вы создаёте очередь (или более сложную структуру, здесь в разных реализациях по-разному) в которую с одной стороны публикуются сообщения, а с другой стороны вызываются обработчики, подписанные на те или иные сообщения в очереди.
В вашем сценарии скорее всего будет подразумеваться две очереди:Очередь задач на scraping. а которую подписываются множество worker'ов, осуществляющих непосредственный сбор данныхОчередь с результатами сбора данных, куда worker'ы будут скидывать данные и на которую подписываются обработчики, решающие что же делать с данными дальше
Возможно есть ещё какие-то задачи и реальная схема будет сложнее, но в целом, надеюсь, идея понятна.
Для PHP существуют немало binding'ов к серверам, реализующим message brokering. Не знаю что именно на сервер вы выберете, поэтому навскидку приведу php-amqplib/php-amqplib для работы с AMQP (в первую очередь с RabbitMQ), enqueue/amqp-tools (также для AMQP) и superbalist/php-pubsub для реализации PubSub паттерна, к примеру через Redis.
Вы не указали на чём написан ваш проект, но в целом также можно посмотреть в сторону компонента Messenger для Symfony, его можно использовать и вне Symfony и он даёт хорошую базу для реализации схем обмена сообщениями.

Худший ответ: Слишком сложные для новичка варианты вам предложили. Откройте почитайте документацию любого вменяемого фреймворка, например 
https://laravel.com/docs/5.8/queues#creating-jobs
Там все с примерами. А то сейчас потратите сотню часов на изучение новых непонятных технологий.
Вопрос: Как перенести винду с умершего жёсткого?

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

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

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

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

Лучший ответ: Стандартная задача на рекурсию. 

Представьте что вы уже умеете решать эту задачу для алфавита длиной n-1, n-2 и т.д. Пусть F(k) — количество паролей для алфавита длины k. 

Тогда для алфавита длины n у вас есть варианты:
  1. Не использовать в пароле последний символ — таких паролей очевидно F(n-1)
  2. Использовать в пароле последний символ — тогда в пароле не может быть предпоследнего символа и дальше можно его продолжать всеми вариантами паролей из n-2 символов. Т.е. таких паролей F(n-2)
  3. Пароль из одного последнего символа — один. 

Итого всего паролей из n символов F(n) = F(n-1) + F(n-2) + 1. 

База рекурсии: очевидно, что F(1) = 1, F(2) = 2.

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

Лучший ответ: Когда ты молодой и еще только учишься в школе, начинать в геймдеве проще простого!
Держи дорожную карту: A Study Path for Game Programmer.
Изучай на здоровье! :)

Худший ответ: Видел как-то в "читай городе" книгу "Программируем с minecraft".
Ща без рофлов, сгоняй купи, может поможет чем)
Геймдев дело не из простых, начни с чего-нибудь попроще.
Если скачаешь unity/ue4 и попробуешь сделать что-то по видео на YT,
то дальше их видео ты и не продвинешься.
Индюшатина сейчас не сильно акутальна, как в 2013 какие-нибудь слендермены,
так что без команды с дизайнером что-то выкакать - только в плеймаркет.
Вопрос: В каких областях программирования недостаток специалистов и много платят, и можно работать на удаленке?

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

Худший ответ: В целом все области испытывают нехватку кадров, пока ни одной такой нет, чтобы за упала там хотя бы до средних 40к рублей
Вопрос: 1С или SAP? Что выбрать для изучения?

Лучший ответ: Если есть возможность пройти стажировку в SAP, то даже думать не нужно - только к немцам. Это однозначно перспективнее и высокооплачиваемое. Франчей 1С и интеграторов вокруг просто море, к ним всегда можно успеть, если не получится стать сапером.

Направление зависит от вашего характера. Если нравится работать по четкому заданию, то в программисты. Если нравится анализировать и описывать процессы, то в аналитики.

Худший ответ: У меня за полтора года года уже третий проект по полному переводу с SAP на 1С
Поэтому если хочешь автоматизировать энтерпрайз именно в России, то наверное лучше в 1С.

По поводу аналитика или программиста - сложно сравнивать, главное чтобы нравился характер работы.
Вопрос: Как запустить Raspberry Pi 4 без монитора?

Лучший ответ: Нужно выставить в config.txt
hdmi_force_hotplug=1
В малинке 3 B+ срабатывает. Загружается и доступна по SSH, хотя до этого была недоступна.
Спасибо gragal

Худший ответ: По ssh недоступна? Может, просто teamviewer не стартовал?
Вопрос: Как принимать SMS сообщения через PHP?

Лучший ответ: Я знаю способ через USB модем + MySQL. Прога закидывает в БД все входящие СМС

Худший ответ: Используйте сервис semysms.net
Там как раз можно принимать, отравлять смс с вашего телефона.
Вопрос: FSMO Schema master роль (DC) хранит у себя данные юзеров например телефонный номер?

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

Худший ответ: Владельцы FSMO ролей созданы не для хранения данных, а для создания уникальности в Active Directory.
Это позволяет избежать создания коллизий, так как важные изменения может вносить только один уникальный контроллер домена.
Вопрос: Как расшифровать файл PHP?

Лучший ответ: ionсube деобфусикация

Худший ответ: Окей, Гугл
Что такое Ioncube и зачем он нужен
Вопрос: Зачем интерфейсы если есть трэйты?

Лучший ответ: Зачем нужны машины, если есть трамваи?

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

Макет класса, в свою очередь, можно принимать в параметры методов и сам макет предназначен что бы изолировать часть класса и не создавать лишних зависимостей. Зависимость на Абстракциях. Нет зависимости на что-то конкретное. 

Представь, у тебя есть класс А с методами M1 и M2, с которым работают 3 других класса. Первый класс использует только метод M1, второй только метод М2, третий M1 и M2. Если ты просто передашь им в параметры класс А, то первые 2 класса будут зависеть от методов которые они не используют. Какой выход? Создай 3 интерфейса - для каждого класса и передавай их. Тогда классы использующие класс А не будут зависеть от того что не используют.

Худший ответ: Множественное наследование

https://www.php.net/manual/ru/language.oop5.traits.php
Вопрос: Как узнать версию кода php?

Лучший ответ: если обе работают, очевидно что версия не выше самой нижней (5.4 в вашем случае).

если вусмерть нужно узнать поддерживаемые версии, то https://github.com/PHPCompatibility/PHPCompatibility и аналоги в помощь.

Худший ответ: В РНР нет такого понятия как "версия РНР кода".
РНР как раз знаменит своей обратной совместимостью, и можно найти много примеров кода, который был написан для 4 версии, и прекрасно будет работать на 8.

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

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

Лучший ответ: Во-первых, преобразователь, скорее всего, нафиг не нужен - в недрах роутера стоит свой, но это не точно. 
Во вторых роутер хочет жрать 9[В]*0.6[А] = 5,4 [Ватта]
Если считать, что преобразователь не полное барахло, примем его КПД за 0.9
5.4Вт/0.9 = 6 Вт
Для чего при 12 вольтах надо дать ток 6[Вт]/12[В]=0.5A.
Батарейка наша при токе 1 ампер живет 9 часов, так что от 0.5 Ампер она проживет 18 часов. Так что сорян, чтобы она работала месяц, нужен аккумулятор от танка.

Худший ответ: 9 / 0.6 = 15 часов
Вопрос: Существует бесплатный vps?

Лучший ответ: Что, 50 рублей в месяц нет?
Может вам еще бесплатный выделенный сервер до конца жизни?
Никто и нигде не даст вам бесплатный VPS на год.

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

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

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

Лучший ответ: Зачем вам БЭМ в ангулар? У вас есть инкапсуляция, не усложняйте верстку в том месте, где это вообще не нужно. Разберитесь в проблемах, которые решает инструмент под лейблом БЭМ и задайте себе вопрос - зачем он в ангулар?

Худший ответ: 2й вариант по бэму. Менять стили компонента при помощи стилей другого компонента - это плохая практика => нет ничего плохого, что это делается не удобно.
Не понял, как вопрос относится к ангуляру
Вопрос: Как компьютер складывает два числа?

Лучший ответ: Сигнал?
Вы путаете шину с какой шиной?

Вы сами точно понимаете на каком уровне детализации вы хотите получить ответ?
Если на логическом - почитайте как работает сумматор. Можно даже посмотреть видяшки. Сумматор это собственно суть работы любой архитектуры.

Если же вам на уровне архитектуры готового процессора - то можно посмотреть инструкции ассемблера для сложения чисел. Отправляем два числа в регистры, выполняем команду Add, получаем результат в регистрах, достаем его.

p.s. Счетчик команд обычно в шину не передается, это часть внутренней архитектуры процессора

Есть подозрение, что у вас намешались в голове отрывки разных лекций и вы путаете архитектуру с конкретной реализацией, и вообще путаетесь с терминами.

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

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

Как бывший преподаватель курсов точно знаю, то любые курсы это не более чем один из множества "честных способов отъема денег у населения" и в реале они не дают ни чего, совсем ничего.

Для понимания процессов того образования что у вас есть (если есть) более чем достаточно, а дальше практика, практика, практика ....

Знаю один случай. Лет 20 назад мой знакомый 19 летний студент на лето попросился в какую-то фирму на стажировку (ходил просился по разным местам почти месяц), бесплатно, разумеется. Когда лето закончилось стал прощаться с руководством, а те ему предложили официальную должность. Сейчас он уважаемый специалист по кибербезопасности в одной европейской стране.

Худший ответ: Есть разные источники. Например здесь есть недорогие курсы, а тут https://codernet.ru бесплатные книги по программированию.
Вопрос: Безопасно ли устанавливать проприетарный драйвер от Nvidia?

Лучший ответ: Ставьте проприетарный, потому что куда деваться-то? Швабодный видеодрайвер убог донельзя и по сути является затычкой, который может только еле-еле отрисовывать картинку в поддерживаемом монитором разрешении, про 3D я вообще молчу.

Если ставите из репозитория (из системы), то бояться вообще нечего.

Худший ответ: Ставьте проприетарный, потому что куда деваться-то? Швабодный видеодрайвер убог донельзя и по сути является затычкой, который может только еле-еле отрисовывать картинку в поддерживаемом монитором разрешении, про 3D я вообще молчу.

Если ставите из репозитория (из системы), то бояться вообще нечего.
Вопрос: Где учить робототехнику?

Лучший ответ: Вам, видимо, программирование микроконтроллеров нужно. Смотрите в сторону AVR или arduino (тот же AVR, но с гламурненькой обвязкой и разнообразным коммьюнити). Кстати, есть ещё такая Iskra JS - она, сюрприз, программируется на js.

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

Лучший ответ: Эффективнее всего - на практике. Как и сишарп кстати

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

Лучший ответ: Хочу то, хочу се, ... пятое, десятое. Ну, блин, хочешь - делай. Я тоже много чего хочу, но делать приходится то что могу и то то что необходимо.

Худший ответ: Изучение Go, Rust я поддерживаю. Это развитие. Это хорошо.
Во фриланс особо не рвись. Я за свою жизнь не видел качественных продуктов в основе которых стоял бы фриланс.
Вопрос: Как выводить информацию из бд по id в ссылке?

Лучший ответ: $dbh = new PDO(
    'mysql:dbname=имя_базы_данных;host=адрес_хоста', 
    'логин', 
    'пароль', 
    [PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"]
);
$sth = $dbh->prepare("SELECT `id`, `name` FROM `users` WHERE `id` = :id");
$sth->execute(['id' => $_GET['id'] ?? null);
$result = $sth->fetch(PDO::FETCH_ASSOC);
print_r($result);

Худший ответ: Вряд ли кто ответит, просто вопрос из банальщины.
база есть?
инициализировал (mysql connect и прочее)?
Или Вы хотите чтобы Вам тут написали, как создать базу, как к ней приконнектится, как оттуда извлечь какие-то значения?
Так Вы не по адресу.
Вам на майл.ру.
А если у Вас уже есть база,
Вы можете сообщить её структуру, и вот только тогда люди ответят.
Вопрос: Таблица wp_postmeta весит более 1 гига, что делать?

Лучший ответ: Вчера вечером как раз в телеграм канале задавался вопрос :)

SELECT meta_key, meta_value, length(meta_value) 
FROM wp_postmeta 
ORDER BY length(meta_value) DESC
LIMIT 10;

- этот запрос покажет вам 10 самых тяжелых записей в этой таблице
- изменяя LIMIT можно посмотреть больше/меньше записей
- length(meta_value) покажет вес значения в байтах

В итоге это позволило найти какие-то ненужные тяжелые записи в таблице и после чистки с 1+ гига уменьшилось до 300Мб.

Худший ответ: Ещё можете посмотреть на какой-то плагин аля https://uk.wordpress.org/plugins/advanced-database...
Как посоветовали: проверьте какие метаданные у вас храняться. Возможно какой плагин или ещё что создаёт кучу записей к каждому посту. 
В целом, я бы игнорировал ситуацию. У вас же не все метаданные загружаются за раз. Но я не эксперт в вопросе БД.
Вопрос: (Ubuntu) Как открыть доступ к передачи файлов в RocketChat?

Лучший ответ: Помогли следующие действия:
1 Администрирование-загрузка файлов-file system указываем путь /var/snap/rocketchat-server/common/upload (в вашем случае он немного другой)
2 по ssh заходим на сервер и логинимся под рутом sudo su
3 переходим в каталог common cd /var/snap/rocketchat-server/common/
4 выдаем права на папку upload chmod -R 777 upload
5 проверяем и пользуемся

Худший ответ: У меня ещё проще - неправильно был написан в общих настройках "URL-адрес сайта". Всё работало кроме загрузки файлов.
p.s. Вот ещё что обнаружил - при перезапуске сервера эта настройка сбрасывается в http и загрузки перестают работать.
Вопрос: Как из числа 1 000 сделать 1000?

Лучший ответ: Max Ba $t = "30 100";

echo str_replace(' ', '', $t); // 30100 См. демо

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

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

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

Лучший ответ: Для отображения используйте DTO и  доставайте их из репозитория. Для логики отображения негоже сущности из бизнес-слоя вытягивать.1 способ  — заюзать Доктринусразу не увидел, что вы без нее работаете
Доктрина умеет создавать дтошки из коробкиclass PostDTO<?php

namespace App\DTO;

class PostDTO
{
    /** @var string */
    private $name;
    
    /** @var string */
    private $description;
    
    /** @var string */
    private $text;
    
    public function __construct(string $name, string $description, string $text)
    {
        $this->name = $name;
        $this->description = $description;
        $this->text = $text;
    }

    public function getName()
    {
        return $this->name;
    }

    public function getDescription()
    {
        return $this->description;
    }

    public function getText()
    {
        return $this->text;
    }
}
И используя синтаксис NEW DQL создаем наши DTO :$query = $em->createQuery('SELECT NEW App\DTO\PostDTO(p.name, p.description, p.text) FROM App\Entity\Post p');
$users = $query->getResult(); // array of PostDTOИсточник: https://www.doctrine-project.org/projects/doctrine...2 способ  — заюзать DBAL/PDO
Сделать запросы через более низкую прослойку без ORM (например через Doctrine DBAL или PDO) и результат фетчить в те же самые PostDTO в репе

Худший ответ: я бы предложил исполльзовать объект-критерии выборки
тогда мы сможем использовать полное и не полное получение данных, ну и для удобство фильтрации$posts = $postRepo->findAllByCriteria( (new PostSearchCriteria)->withFullData(true) );
Вопрос: Как реализовать на с или assembler асинхронную выборку из RAM?

Лучший ответ: Как реализовать на с или assembler асинхронную выборку из RAM?
Например так. Это часть реализации memcpy для MIPS. Этот код не выглядит асинхронным, но написан именно так (сначала групповая загрузка в разные регистры, потом изменение базового адреса загрузки, потом групповое сохранение, потом изменение базового адреса сохранения) с рассчётом на то, что процессор сможет, в том числе, перекрыть во времени операции загрузки, арифметики и сохранения данных.

Худший ответ: переупорядочивание выполнения (out of order execution) процессор выполняет и так, то есть он сам будет по возможности чем-то другим заниматься, пока грузит данные из памяти.  писать код так, чтобы он для этого был оптимален - отдельный навык, которым сейчас мало кто владеет, потому что им в совершенстве овладели компиляторы.

но если трактовать ваш вопрос буквально, то у x86 (точнее в наборах команд sse и avx) есть целое семейство команд для префетча данных в разные уровни кэша:

PREFETCHT0 - prefetch data into all levels of the cache hierarchy 
PREFETCHT1 - prefetch data into level 2 cache and higher 
PREFETCHT2 - prefetch data into level 2 cache and higher 
и аналогичные avx-овские  VPREFETCH(0-2) для чтения и  VPREFETCHE(0-2) для записи.

в сишном коде это делается через intrinsic функцию  _mm_prefetch

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

Лучший ответ: Я когда то столкнулся с похожей задачей.
Мне надо было выявить все  6 символьные домены в зоне .com
Действовал по такому плану:
1) Накидал на go программу, которая собрала мне все возможные комбинации, получилось ~ 2.4 млрд доменов
2) Написал на go многопоточную программу, которая опрашивала их. В первую очередь, конечно по DNS, если есть ответ по  DNS, то нет смыла насиловать whois. Но с DNS тоже не все так просто, после определенного кол-ва запросов DNS начинает думать, что ее ддосят и может начать тупить. Так что я собрал список всех возможных вариаций публичных днс-серверов + то что дал провайдер и опрашивал их рандомно.
3) Если по dns не было ответа, то тогда обращался к whois, через кучу разных проксей и сокетов, ибо они банят очень быстро.  Так как whois еще более капризный чем DNS. Мало того, whois может еще и обманывать, выдавать, что домен свободен, а реально он занят. И приходилось юзать API некоторых регистраторов для проверки. 
Если мне память не изменяет,  где-то за неделю собралась база данных.
Было это где-то 3 года назад, не знаю, может что-нибудь поменялось с тех пор.

Худший ответ: в оригинале все бесплатно
ищите, откуда берут платные
Вопрос: Пройти путь с 0(frontend)?

Лучший ответ: понимание основ есть.
Когда пройдешь:
- курсы htmlacademy (там верстка, и интенсивы не советую, если только не можешь после курсов взять и сверстать макет то можно на интенсив)
- прочитаешь learn.javascript.ru
- основы программирования - hexlet
- практика - codewars
- дока по выбранному фреимворку и проекты для практики.
Вот это будет понимание основ
дальше https://roadmap.sh/frontend
Может смотреть на YouTube как человек пишит код и повторять за ним?
Да, практика решает в итоге.

Блог новичка

Худший ответ: Если совсем новичок в этом, то для базового понимания HTML/CSS, htmlacademy - очень даже хороша. Попутно читай книги/статьи и можешь начать верстать что-то простое, типа сайта визитки.
Вопрос: Как лучше фиксировать обучающий материал?

Лучший ответ: лучший блокнот с удобным поиском 

маловероятно, что если твоих закладок будет больше 25, а тетрадь толще 12листов, то оно тебе поможет
забыл метод -> загуглил
ошибся в синтаксисе -> загуглил

Худший ответ: лучший блокнот с удобным поиском 

маловероятно, что если твоих закладок будет больше 25, а тетрадь толще 12листов, то оно тебе поможет
забыл метод -> загуглил
ошибся в синтаксисе -> загуглил
Вопрос: Как загрузить на github проект Django с секретной информацией в settings.py?

Лучший ответ: https://github.com/joke2k/django-environ
1. Создаешь у себя на локалке в папке с настройками файл .env
В нем прописываешь следующее:DEBUG=on
SECRET_KEY=blablasecret
2. Добавляешь файл .env в .gitignore
3. В settings.py  заменяешь свои переменные на эти:import environ
env = environ.Env(
    DEBUG=(bool, False)
)
environ.Env.read_env()
DEBUG = env('DEBUG')
SECRET_KEY = env('SECRET_KEY')
Если будешь деплоить на сервер(VPS) - добавляешь такой же файл и генеришь там SECRET_KEY

Худший ответ: Я делаю так))
В конце settings.py добавляюtry:
    from local_settings import *
except ImportError:
    pass