Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как воспользоваться методом re.split?

Лучший ответ:
Во-первых, вы можете экранировать символ двойных кавычек так же, как экранируете символ перевода строки - "[ \n.,?!:;'\"]". Во-вторых, можно проще и быстрее сделать:from collections import defaultdict, Counter
import string

punctuation_map = dict((ord(char), None) for char in string.punctuation)
prepositions = ['и', 'в', 'без', 'до', 'из', 'к', 'на', 'по', 'о', 'от', 'перед', 'при', 'через', 'с', 'у', 'за', 'над', 'об', 'под', 'про', 'для']

with open('WarAndPeace.txt', encoding='utf-8') as fh:
    text = fh.read()
    clean_data = text.translate(punctuation_map)
    words = Counter(word.strip().lower() for word in clean_data.split() if word not in prepositions)

print(words.most_common(1))

Худший ответ:
Экранируйте  re.split("[ \n.,?!:;'\"]", corpus)
Вопрос: Какую тему диплома на Java EE выбрать?

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

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

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

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

Лучший ответ:
Если не позволяет хостер использовать set_time_limit(0), тогда использовать менеджер очереди.

Худший ответ:
set_time_limit(0); - в начале скрипта.
Вопрос: Redis vs SQLite vs PostgreSQL

Лучший ответ:
Молоток vs Кувалда vs Отвёртка

Я решил выяснить, какой из инструментов лучше. Представил одинаковую задачу — ударять себя по большому пальцу ноги. Отвёртку решил держать за ручку и ударять наконечником, так как неудобно держать за наконечник и ударять ручкой. Для молотка и кувалды это одинаковые схемы. Запросы: ударить по большому пальцу и измерить время, сколько болит.

Результат: если ударить больно, то палец болит. В чём же тогда прелесть отвёртки? Понимаю, что она подходит для узконаправленных задач, например, только откручивание или закручивание, т.е. для ограниченных задач. В остальном одни минусы: и держать неудобно, и площадь поражения невелика, и по пальцу я попал только с третьего раза.

PS: Что вы используете для надёжного перманентного отбивания пальцев? Холивар классический русский молоток vs молоток из икеи можно опустить, разницы между ними практически не будет.

Худший ответ:
>для надёжного перманентного хранения данных

Вот здесь берегитесь, на сколько я знаю практически все NoSQL полуперсистентные, то есть не дают 100% гарантий на сохранность. Postgres легко превращяется в некое подобие NoSQL если отключить синхронный коммит — снижаются гарантии сохранности, скорость вырастает где-то на два порядка.

UPDATE — дорогая операция для того же постгра. Видимо in memory базы умеют эту операцию выполнять быстро. Так что для всякого рода счетчиков redis — отличная штука.
Вопрос: Стоит ли идти учиться в колледж на программиста?

Лучший ответ:
Может тогда легче вообще не идти учиться и уделать самообразованию больше времени?

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

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

Худший ответ:
Запросто могут забанить, если бОльшая часть информации будет скопирована. 
А если и не забанят, то продвигать всё-равно будет сложно. 
Я бы посоветовал хотя-бы рерайт текста сделать.
Вопрос: Програмы на elementary?

Лучший ответ:
Linux это не операционная система, а ядро на котором базируется множество операционных систем, называемых -- дистрибутивами. Они могут быть похожи и совместимы, а могут быть совершенно разными. Единственное, что будет  объединять такие ОС на основе Linux -- утилиты входящие в стандартную поставку ядра. Например top. Или ls. Бывает такое, что разработка дистрибутива развивается по разным направлениям-веткам. Такие ветки называются -- форки. Например минт это форк убунту. А убунту в свою очередь форк дебиан. Для того чтобы примерно оценить совместимость того или иного пакета нужно поинтересоваться историей и происхождением дистрибутива. Например убунтовские пакеты обычно без всяких проблем встают на минт. А редхатовские на федору.  Elementary OS форк Убунту поэтому скорее всего многие пакеты Убунту без проблем установятся и на нее.

Худший ответ:
Ну если ничего не сломали сам разработчики, то да.
Последняя версия:based on Ubuntu 16.04 LTS
Вопрос: Много ли потребляет ресурсов локальный сервер Денвер?

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

Худший ответ:
OpenServer лучше поставьте :)
Вопрос: Как исправить ошибку в спринге?

Лучший ответ:
Добавте JDBC драйвера в зависимости. В статье написано об этом.NOTE: I noticed that some of the readers are getting database connection issues. Notice that in my pom.xml, there is no database driver. That works for me because I have MySQL driver in tomcat lib directory and some DataSource connections configured with it. For any database connection related issues, either put the database driver in container lib or include that in pom.xml dependencies.
Если используете MySQL то это будет<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>6.0.4</version>
</dependency>

Худший ответ:
Добавьте к методу listPersons() аннотацию @Transaction.
Вопрос: Как задать рамку сложной формы с помощью HTML/CSS?

Лучший ответ:
как вариант - https://jsfiddle.net/soledar10/rnrf3rn8/
или так - jsfiddle.net/soledar10/ezvbhxL0

Худший ответ:
Рамка задается так же, свойством borderhttps://jsfiddle.net/slippyk/v4w7wgqc/
Вопрос: Можно ли запретить выход из android приложения по софт-клавишам?

Лучший ответ:
заклейте или засуньте в самодельный чехол

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

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

Худший ответ:
Давайте я Вам покажу готовый проект, а Вы сделаете для него внятный интерфейс? Нет, лучше три! Вот и будет Вам для портфолио. А если интерфейс будет действительно внятным - даже могу использовать его. А если ну ваще капец внятный - то и денег заплатить.
Вопрос: Как исправить конфликт onMouseOver и onMouseOut (GIF пример внутри)?

Лучший ответ:
Проблему решил заменой onmouseover="function" 
onmouseout="function"
наonmouseenter="function" 
onmouseleave="function"

Худший ответ:
используйте onmousemove
Вопрос: Обработка .click() в JQ?

Лучший ответ:
1) Счётчик или булев переключатель, по типу click -> flag = !flag, т.е. присваиваем противоположное значение.
2) jsfiddle.net/IonDen/Lj17g71m/2

Худший ответ:
Написал для вас небольшой пример, как реализовать это в несколько строк - jsfiddle.net/nh92xgxr
Вопрос: Yii2 как написать такое правило для Urlmanager?

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

Худший ответ:
'repetitory/<city>/<subject>' => 'search-tutor/index',
'repetitory/<city>' => 'search-tutor/city',
Лучше всего сделать так. Так как у вас subject теоретически может быть одинаков в нескольких города, и тогда вообще будет непонятно из какого city тянуть subject.
Вопрос: Какую плату и программатор купить для старта?

Лучший ответ:
Берите отладочные платы на основе STM32. Arduino не берите ни в коем случае. Поймите принцип разработки на микроконтроллерах: прерывания, таймеры, интерфейсы(SPI, I2C, UART).

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

Лучший ответ:
Как пример.vimrc" Ctrl-Enter: force save file
nnoremap <silent> <C-Enter> :<C-u>write!<CR>

" Shift-Enter: force save file when buffer was changed
nnoremap <silent> <S-Enter> :<C-u>update!<CR>" Ctrl-s: force save file
inoremap <silent> <C-s> <Esc> :write!<CR>i
Для ожидаемой работы <C-s> в терминале, добавить в конфиг:bash ~/.bash_profile или ~/.bashrcstty ixoff -ixonzsh ~/.zshrcstty start undef
stty stop undef
setopt noflowcontrol

Худший ответ:
Можно еще ZZ
Вопрос: Как написать парсер на LUA?

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

testStr = "Hello Johny !";

function do_replace(inputStr, startWord, endWord, replaceStr)
  return string.gsub(inputStr, startWord .. " (%S+) " .. endWord, startWord .. " " .. replaceStr .. " " .. endWord);
end

result = do_replace(testStr, "Hello", "!", "habrahabr");
print(result);


Худший ответ:
Можно сделать использую string.gsub. Что-то вроде string.gsub(givenString, start… '(.*)'… stop, replace)
Это на regex'е.
Можно сделать эквивалент кода на php используюя соответсвующие функции из модуля string.
Вопрос: Fstab монтирует корень в read only, в чем может быть проблема?

Лучший ответ:
> При загрузке с правилом fstab
> /dev/sdb4 / discard,errors=remount-ro 0 1 
> sdb4 монтируется в корень но только в read only 
> Замена discard,errors=remount-ro на defaults решает проблему. 
Проверить не пробовали? У вас в строчке сказано ПРИ ОШИБКАХ МОНТИРОВАТЬ В RO. И с такой строчкой монтируется в ro. В чем же может быть дело? Вот ведь загадка!
> Если бы не обновление до 16.10
Машину времени на место верните! 16.10 выйдет только через полгода.

Худший ответ:
Попробуйте убрать параметр "discard". Он deprecated и замедляет удаление, рекомендуется просто раз в неделю делать "fstrim --all".
Ну и неплохо бы посмотреть в dmesg на то, как проходит монтирование.
Вопрос: Кто-нибудь знает какие-нибудь курсы или хорошую литературу по Python?

Лучший ответ:
здесь ты не нашёл ответа на свой вопрос?или здесь?

Худший ответ:
Начало всех программистовimport easygui
msgbox("Hello world!", "Всем привет!")import easygui
A = [] #Пустой список
a.append(randint(1, 2))
print(a)
Вот так вот! У меня!
Вопрос: Как вы втягиваетесь в новый проект?

Лучший ответ:
Для быстрого начала работы над задачей, только что влившемуся в проект сотруднику, нужны следующие вещи:
1. Централизованная структурированная проектная документация всего разрабатываемого решения.
2. Архитектурная схема решения и помеченный блок, в котором нужно будет выполнять задание.
3. Краткое описание задания и методика проверки его полного выполнения.
4. Краткая архитектура кода этого блока и указание места с пояснением для начала выполнения работы.
5. Ориентировочный перечень наиболее вероятных названий классов/методов/смежных API для использования при выполнении задания с кратким описанием и со ссылками в централизованную документацию (п.1).
6. Ориентировочный перечень классов/методов/смежных API, которые возможно могут понадобиться (также, как и в п.4 со ссылками в п.1).
7. Рекомендуемая среда разработки для выполнения задания и её настройки для исполнения данной задачи
8. Планируемое время выполнения задания
9. Контакты с другими разработчиками (с указанием их зон ответственности в проекте и времени доступности) для возникающих вопросов, касательно этого задания.Попросите дать задачу в таком формате: у того, кто давно работает в проекте, это займёт не более часа, а сэкономит - недели проектной разработки!

Худший ответ:
О, привет, Максим. 
На самом деле, если нет ни доков, ни тестов, и.т.д.
То вариант у тебя один: просто читай по максимуму код и старайся, чтобы твоя, вновь внесенная логика локально ничего не сломала. А дальше уже въедешь в проект и будешь чувствовать себя уверенней.
Но код надо читать все равно, и чем больше, тем лучше)
Вопрос: Как отображать URL при просмотре поддомена на nginx?

Лучший ответ:
Должно работать просто так:location / {
    proxy_pass https://domain.com/path/;
}

Худший ответ:
Кажется вы не праивльно используете директиву: nginx.org/ru/docs/http/ngx_http_proxy_module.html#...
Вопрос: На каком языке лучше писать p2p чат?

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

Худший ответ:
на c++
а можно просто использовать библиотеку функций libtorrent
Вопрос: Разобрать такой массив в виде строки на php?

Лучший ответ:
ideone.com/2GBcvF
этого, в принципе, уже достаточно. но при желании можно и перевести в отдельные переменные.

Худший ответ:
Вот так вы получите желаемое:$query = "name=fgdg+d&strase=fdg+dfgd&gorod=dfg+dfg&pochtindex=4435352&phone=23423414141";

parse_str($query, $query_array);

extract($query_array);

echo $name . PHP_EOL;
echo $strase . PHP_EOL;
echo $gorod . PHP_EOL;
echo $pochtindex . PHP_EOL;
echo $phone . PHP_EOL;Результат:
fgdg d
fdg dfgd
dfg dfg
4435352
23423414141
Вопрос: Надежен ли такой метод хранения паролей?

Лучший ответ:
Что только люди не придумают, чтобы не использовать KeePass.UPD: А теперь по существу:
При распаковке файла из архива (даже при использовании интегрированного просмотрщика из GUI архиватора) распакованный файл в открытом виде пишется на диск. Если в этот момент убить процесс архиватора, то файл останется на диске. Даже если вы совершенно точно потом вручную его удаляете его, все равно остается возможность его восстановить, причем неизвестно в течении какого времени его остатки можно будет найти на диске, это могут быть и годы. Единственное, что может помочь - средства гарантированного стирания (файла и свободного места на диске). Но их применение еще больше усложняет процесс извлечения паролей, следовательно повышает вероятность случайной ошибки.
Кроме того, весь софт, запущенный под тем же юзером имеет достаточно привилегий для чтения содержимого буфера обмена в любой момент (теоретически эти привилегии можно отозвать, но большая часть софта не рассчитана на такое и будет вылетать с дикими ошибками). Многие кейлоггеры очень пристально следят за изменениями в буфере, хранение и посылка на сервер всех изменений обходится им "дешевле", чем съемка скриншотов. И даже скрипты на веб-странице могут в некоторых случаях читать из буфера (в зависимости от браузера и от настроек).

Худший ответ:
На сегодня есть только один вариант безопасного входа: токен/сертификат, полученный при регистрации в системе с двухфактороной аутентификацией через PIN.
Но на сегодня это работает на ничтожном проценте от всех сайтов...Если Вы хотите обезопасить свои пароли от кражи с Вашего ПК:
Обезопасить свои пароли от кражи с Вашего ПК какими-либо программами можно только с помощью "auth-session-wrapper".
Т.е. создаёте свой модифицирующий пакеты прокси и указывайте ему свои пароли к сервисам: связки "логин/пароль"->"URL","METHOD". Можете добавить USER-AGENT и/или другие заголовки браузера - по-вкусу.
И далее, обращаетесь к нему с другого ПК с передачей заголовков один-в-один/точь-в-точь этого (консольного) ПК при нажатии на кнопку LOGIN с пустыми полями. Получаете информацию о сессии, восстанавливаете на консольном и... Вы уже залогинены под своей учетной записью без ввода пароля на своём ПК.
Главное, чтобы ПК-враппер был в одной внутренней сети, что и консольный. Т.е. имел ТАКОЙ ЖЕ внешний IP-адрес, что и консольный. (т.к. в части случаев сессия бывает привязана к IP-адресу её инициатора)Если же Вы сами строите закрытую зону, можно сделать по следующей схеме:
1. Вы жмете кнопку "Login" и система считывает текущий токен с вашего браузера/приложения, обновляет его.
2. Просит подтвердить ключом защиты: через другой канал (другой домен, SMS и прочее). Т.е. например, система может открыть окно к другому домену, где будет надпись: "Введите PIN на вход для сессии 31337". Например, 4 цифры: "4115"
3. После ввода - удалённый сервер сверяет связку полученную через два разных канала: ПИН+ТОКЕН+[временные интервалы/лимиты]
4. если все ОК - пускает в защищенную зону (ЛК и т.п.).
Дополню по теме: лучшая защита личного API от постороннего входа (со стороны сервера): port knocking
Вопрос: Можно ли в конфиге установить постоянную $_GET переменную без rewrite?

Лучший ответ:
Да, это возможно. Например так:

fastcgi_param QUERY_STRING m=true&$query_string;

Худший ответ:
А в духе $_GET['m'] = true; нельзя?
Вопрос: Как получить href ссылки Jquery?

Лучший ответ:
$(".remove").bind('click',function(e){ // bind лучше заменить on
  e.preventDefault(); // Отменяет стандартное действие ссылки
  alert($(this).attr('href'));
  return false; // Не совсем понял, зачем вы возвращаете что-то из колбека. Это можно убрать
});
P.S. А также минутачка пропаганды. Верите ли в спасителя нашего, скрипт кофейный?$(".remove").on 'click', (e)->
    e.preventDefault()
    alert $(this).attr 'href'
Удобно ведь

Худший ответ:
$(".remove").bind('click',function(event){
event.preventDefault();
  alert($(this).attr('href'));
  return false;
});
UPDATE по обновленному вопросу:
Ты функцию вызываешь где-то потом, а биндишь сразу, вот так попробуй:function renderCand (data) {
  $("a#countCandidates > span.badge").text(data.length);
  $("#listCandidates").empty();
  data.forEach(function(item){
    $("#listCandidates").append('<tr>'+
                '<td>'+item.id+'</td>'+
                '<td>'+item.name+'</td>'+
                '<td>'+
                  '<a href="#" class="thumbnail">'+
            '<img src="http://placehold.it/140x100" alt="...">'+
          '</a>'+
                '</td>'+
                '<td>'+item.description+'</td>'+
                '<td>'+
          '<div class="btn-group" role="group" aria-label="...">'+
            '<a href="'+Routing.generate("candidates_delete",{id: item.id})+'" class="btn btn-xs btn-danger remove"><i class="fa fa-trash-o"></i></a>'+
            '<a href="#" class="btn btn-xs btn-warning"><i class="fa fa-edit"></i></a>'+
          '</div>'+
                '</td>'+
            '</tr>');
  });
  $(".remove").bind('click',function(event){
    event.preventDefault();
    alert($(this).attr('href'));
    return false;
});
}
Вопрос: Как создать игровой мир?

Лучший ответ:
Чтобы создать игровой мир, следует освоить азы программирования, и научиться работать со структурами данных, написать несколько программ попроще для практики.
Затем следует освоить программирование на среднем уровне, и только после этого написать несколько проектов или игр попроще. Для практики.
Тогда не будут невнятных фраз типа "в массиве вроде как нельзя удалить", "процессор с ума сойдет", "как сделать чтобы много памяти игровой мир не кушал"

Худший ответ:
Лучше найдите программистов, которые вашу идею реализуют. А то массивы - это основы языка.
Ну а если по делу, то:
1.Если у вас мир большой, то стоит ли всё держать в памяти, не лучше ли в файлик всё записать?
2. Почитайте про динамические структуры данных. Стеки, очереди, вектора, может вам что-то может из этого.
3. Разработайте мир, сюжет, геймплей, игровую механику без языка программирования, как гейм-дизайнер и когда всё продумаете, переходите к технической реализации.
Вопрос: Как сделать маску ввода телефонного номера?

Лучший ответ:
когда выполняется скрипт в хедере, элемент #billing_phone еще не создан браузером, вот и не работает.
обернуть надо$(document).ready(function() {
$("#billing_phone").mask("(999) 99-99-999");


$("#billing_phone").on("blur", function() {
    var last = $(this).val().substr( $(this).val().indexOf("-") + 1 );
    
    if( last.length == 3 ) {
        var move = $(this).val().substr( $(this).val().indexOf("-") - 1, 1 );
        var lastfour = move + last;
        
        var first = $(this).val().substr( 0, 9 );
        
        $(this).val( first + '-' + lastfour );
    }
});
}
или переместить ваш код в футер

Худший ответ:
или переместить ваш код в футер
или использовать delegate
api.jquery.com/delegateDescription: Attach a handler to one or more events for all elements that match the selector, now or in the future, based on a specific set of root elements.
хотя если элемент единственный, судя по селектору правильней будет послушать предыдущего оратора -))
Вопрос: Ubuntu tcptrack что делать не находит eth0?

Лучший ответ:
смотри имя сетевухи в ifconfig.

Худший ответ:
Имя интерфейса другое посмотри в сетевых настройках
Вопрос: На ноутбуке клавиши F1... etc работают только по нажатию fn. Как быть?

Лучший ответ:
Обычно в биосе переключалка была, на прошлом рабочем Леново была такая же фигня по дефолту

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

Лучший ответ:
возможно, тег base указывает на http, a не https.
покажите адрес, можно будет разговаривать более предметно.

Худший ответ:
Либо смешанное содержание либо пути не те.
От корня путь в href?
Вопрос: Какой выбрать видеоплеер для сайта?

Лучший ответ:
Uppod — плеер для сайта (Flash и HTML5), видео, аудио и фото.

Худший ответ:
JW gk'th/ www.longtailvideo.com/players/ Кушает всё, что вы ему дадите. Выдирать прямую ссылку на видео не так уж и трудно.
Вопрос: Как найти «уязвимость», позволяющую управлять стилем отображения моих комментариев color:#2d72d9;?

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

Худший ответ:
Могу предложить !important. Но это не окончательное решение: !important может дописать и пользователь. Я бы запретил html-теги. Либо запретить теги style и link
Вопрос: Как правильно собрать PHP с mariadb?

Лучший ответ:
Всё просто:
apt install libmariadbd-dev

Худший ответ:
он ищет реальный mysql-server, но его устанавливать я не особо хочу, 
А ему (PHP v7) глубоко до фени что вы там хотите, а чего нет: если по зависимостям требуется пакет - будьте добры его предоставить.
Вопрос: Какой правильный метод деплоя приложения в docker-контейнерах на vps?

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

Худший ответ:
оркестраторы в вашем случае излишни, для большинства из них потребуется как минимум еще один мастер-сервер. Docker Compose более чем достаточно для теста и деплоя в пределах 1 сервера.