Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: PayPal и сбор комиссии

Лучший ответ:
это не проблема, есть paypal chained payments

проблема с правовой стороны. например как РР оценивает сколько вы заработали при выводе: все поступившие платежи минус отправленные деньги? или просто всю сумму поступивших платежей? если просто побаловаться, то не важно.а если это серьезные намерения, то тут всплывает много нестыковок

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

Лучший ответ:
Я пока неопытный и учусь, поэтому не судите строго. 
По-моему, как раз, когда ты неопытный, судить нужно максимально строго, чтобы выправить руки в нужное русло как можно быстрее. А если ты от критики расстроишься и бросишь это всё - ну и ладно, меньше конкуренция.
Я уже сто раз тут это писал и ещё напишу, пока будет эта жесть.
Вот создал ты модель вакансий. Ты моделью описываешь единичную сущность, а назвал Vacancies - множественным числом.
Дальше: вот у тебя есть модель вакансий. Зачем ты каждому полю даёшь имя, дублирующее имя модели? (Я про vac_*). Создал ты вакансию, да:vacancy = Vacancy.objects.create(...)
И пошёл получать атрибуты:vacancy.vac_name  # Красиво, п****ц, да?
Сокращённые названия атрибутов - красота. Через полгода ты понятия не будешь иметь, что за vac_zan, vac_usl, vac_cat. А человек, который будет с тобой работать в команде или рефакторить это после тебя получит отличный набор головоломок в подарок к коду.
Просто шикарные хитросплетения русского и английского языков. Твой код отражает твою многогранность и неповторимость. Ты - полиглот. Так ты думаешь, когда городишь эту ахинею?
Я, к сожалению, прямо сейчас занят рефакторингом подобного кода и первые два дня я плакал над этим кодом и отказывался за него садиться. Заказчик уговорил с условием, что я полностью переписываю ту жесть.
Ответ на вопрос: https://pypi.python.org/pypi/django-widget-tweaks

Худший ответ:
Roman Kitaev дело говорит. послушайте его
а Ваша проблема решается такclass VacForm(forms.ModelForm):
    vac_name=forms.CharField(widget=forms.TextInput(attrs={'class':'supername'}))
    class Meta:
        model = Vacancies
        fields = ('vac_name', 'vac_req','vac_obz', 'vac_usl','vac_salary', 'vac_comp','vac_zan', 'vac_locat', 'vac_exp','vac_cat', )
либо такclass VacForm(forms.ModelForm):
        vac_name.widget = forms.TextInput(attrs={'size': 10, 'title': 'Search', 'class':'supername''})
.....
Вопрос: Материнка для нового компьютера: Gigabyte vs ASRock vs ..?

Лучший ответ:
не советую даже рассматривать мамки asrock, msi, biostar, elitgroup. По большей части это низкокачественная китайщина, хоть и делается на техже заводах. За 3 года в сервисе больше всего именно этих мамок шло в мусорку.
если есть возможность то берите Asus, Gigabyte, Intel.

Худший ответ:
Посоветую Gigabyte — проверенная временем компания. Постоянно закупаем большое количество ПК с их материнскими платами — проблем нет.
Вопрос: Как исправить ошибки в PHP-коде?

Лучший ответ:
function comment_count( $count ) {
        global $id;
        $comments = get_comments('post_id=' . $id);
        $comments_by_type = separate_comments($comments); // <<-- эта строка
        $comcaunt = count($comments_by_type['comment']);
        return $comcaunt;
}

Худший ответ:
По ссылке можно передавать только переменные.
https://php.net/manual/ru/language.references.pass.php
Почему не принимается переменная (массив)?
Вопрос: Как изнашивается аккумулятор?

Лучший ответ:
Дожидаться полной разрядки не рекомендуется, 70-80% разрядки самое то. Если конечно мы говорим о Li-ion.

Худший ответ:
А можно чуть подробнее, почему?
Вопрос: Анализатор темпа песен?

Лучший ответ:
Эмм… взгляните на следующий скриншот программы MixMeister Fusion:


Треки как раз таки можно отсортировать по BPM и проиграть с автоматической подгонкой бит-в-бит, но для сведения этого может быть недостаточно. А теперь обратите внимание на ключи тональностей (поля KEY и KEYCODE)… О них вы можете почитать тут.

Существует множество более профессиональных программ для сведения музыки,
но для решения вашего вопроса имхо наилучшим вариантом будет MixMeister.

Что касается недостатков: программа поддерживает только MP3 и WAV. Не поддерживает FLAC, что может быть очень неприятно, если у вас большая коллекция в данном формате.

Худший ответ:
Темп в музыке как понятие — это количество четвертных нот, исполняемых в одну минуту. Отсюда определяются длительности звучания остальных нот. Т.е. если делать это как то полуавтоматически, то я бы указывал точный участок с одной нотой, длительность которой заранее известна. Ну дальше дело техники — есть длительность ноты, есть длительность его звучания, конвертируем в четвертные… Но это сугубо музыкально-академический подход.
Вопрос: Macbook Air как инструмент разработчика?

Лучший ответ:
Работал на Air 13, первого поколения, затем второго. Первое поколение для разработки плохо применимо, т.к. греется он достаточно сильно и сборка проектов превращается в пытку. Шум и перегрев были основными недеостатками. Через некоторое время сменил его на второе поколение с SSD.

Воторое поколение с SSD работает быстрее чем моя прошка 13 без SSD! Для любой разработки пригоден на все 100%. 13 дюймов для кодинга вполне хватает, глаза устают только к вечеру. Кодю по 8-10 часов в день плюс еще кино смотрю и серфлю, итого 14 часов где-то за компом. Шума от него нет, можно работать ночью (первое поколение Air шумело).

Сейчас отдал Аir жене, а себе взял 13 прошку. Могу сказать, что Air работает пошустрее, особенно заметно при сборке, и затем при запуске и проверке того что накодил.

Единственным недостатком Air считаю дисплей без черной рамки.

Мышку я не использую, трекпад вполне устраивает.

Клавиатура с подсветкой, опять же можно работать ночью. Клавиши нажимаются четко, промахов обычно не бывает. Но через пол года кнопки стали цокать слегка сильнее и некоторые отполировались.

Сборка в Eclipse (FDT). Xcode.

Худший ответ:
У меня Air 11", и я на нём программирую тогда, когда не сижу за десктопом. В том числе в весьма ресурсоёмкой среде (Scala / IntelliJ IDEA). Полёт нормальный. Это не нетбук, это нормальная машина.
Вопрос: Front-end или back-end, как вы определились?

Лучший ответ:
Depends от того что Вам вкладываете в понятие "работу от которой я бы был доволен".
Если речь идет про сложную математику - то её в вебе действительно очень мало.
Навскидку распознавание голоса, изображений, pathfinding какой то, анализ bigdata.
Если просто хочется писать что то более осмысленное чем "элемент подсветить, вывести из базы товары" - вариантов немного больше:Если сравнивать с простыми сайтами на подобие интернет магазина, то тут не составит труда фронт-энд разработчику написать серверную часть.
Это очень обманчивое заблуждение.
Сложная логика появляется там где есть сложные бизнес требования.
Если под интернет магазином подразумевается 3 продажи в день - то тут вообще программировать не нужно, любого готового движка хватит.
А вот если это какая нибудь условная www.lamoda.ru - со своим достаточно нелинейным маркетингом, своей системой складского учета, своей системой автоматизации и оптимизации логистики итд - там в штате ~300 разработчиков сидит, а задача "вывести из базы товары" трансформируется в 100 страничное тз кому, когда и какие товары надо выводить.
Ну и от нагрузки многое зависит. Сделать систему которая бронирует 1 квартиру в секунду и 1000 квартир в секунду - принципиально разная сложность и объем кода.

Худший ответ:
Придумайте себе задачку на основе
habrahabr.ru/post/205398
habrahabr.ru/post/211773
+ что-то связанное с соц сетями
Вопрос: Как делается в android studio прозрачный статус-бар, такой как это сделано в гугл мэпс?

Лучший ответ:
Нашел только как прятать .-. Но есть подозрения, что на этом шпионском ресурсе таки найдется и для прозрачности, нет? А если нет, то есть подозрение, что это задается ОС, а не разработчиком приложения. Но могу ошибаться. https://developer.android.com/training/system-ui/s...
UPD: А, вот, кажется, по теме https://developer.android.com/training/system-ui/d...
UPD2: Ну и это еще https://developer.android.com/training/material/th...

Худший ответ:
в android studio прозрачный статус-бар 
Андроид студии ни к чему прозрачный статус бар. 
Читайте про новую support design либу.
https://medium.com/ribot-labs/exploring-the-new-an...
Вопрос: За какое время Вы научились «слепому» набору?

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

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

Лучший ответ:
Можно написать скрипт на AutoIt, который расставит окна как надо.

Худший ответ:
Здравствуйте, Troj!
Юзайте программу «ShellFolderFix». Пользуюсь сам, очень удобно!
С Уважением, Григорий!
Вопрос: Как закрыть доступ ко всему кроме одной программы?

Лучший ответ:
1. Напишите приказ и подпишите у директора, что на данном компьютере разрешено исключительно просмотр системы видеонаблюдения.
2. Зарежьте юзеру права по максимуму.
3. Поменяйте ему шелл на вашу программу, чтобы рабочий стол вообще не запускался
4. Запретите вызов диспетчера задач этому пользователю через политики.

Худший ответ:
как вариант remoteapp
а если стационарный компьютер то через групповую политику
profhelp.com.ua/articles/windows-7-%D0%BA%D0%B0%D0...
Вопрос: Где и как правильно хранить верстку страниц работая с GIT?

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

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

Лучший ответ:
api.jquery.com/animate
complete
Type: Function()
A function to call once the animation is complete.
Применяйте анимацию последовательно

Худший ответ:
Это называется chaining.
Вот например обсуждение stackoverflow.com/questions/7825509/css3-chain-ani...
Даже есть чисто CSS решение, (animation-delay): 
-webkit-animation: First 1s, Second 2s;
-webkit-animation-delay: 0s, 1s;
(-moz и тд)
Но  надо тестировать, может не везде все хорошо идет. Тогда SetTimeout().
Вопрос: На основе каких технологии создаются визуальные редакторы заказов?

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

Худший ответ:
С помощью чего грамотнее реализовать подобное?Unity3D (HTML5)
Вопрос: Как проверить строку на сбалансированность скобок?

Лучший ответ:
Ололошки уже три ответа и ни одного правильного.function isBalanced(str) {
    // пары открывающих-закрывающих скобок
    var br = "(){}[]";
    // стек открытых скобок
    var st = [];
    // бежим по всей строке
    for (var i = 0; i < str.length; ++i) {
        // текущий символ
        var ch = str[i];
        // ищем символ в скобках
        var ind = br.indexOf(ch);
        // если скобка найдена
        if (ind >= 0) {
            // проверяем, какая это скобка
            if (ind & 1) {
                // если закрывающая скобка, проверяем стек
                // стек пуст - плохо
                if (!st.length) return false;
                // извлекаем последнюю открытую скобку из стека
                var last_br = st.pop();
                // если она не соответствует закрывающей скобке - тоже плохо
                if (last_br != br[ind - 1]) return false;
            } else { 
                // открывающую скобку просто пихаем в стек
                st.push(ch);
            }
        }
    }
    // если после обхода всей строки стек пуст - всё ок
    return !st.length;
}
Проверять тут.

Худший ответ:
самая первая мысль - подсчитать кол. открытых скобок и закрытых - если равны, значит все окей(но тут есть загвоздка с расположением скобок)if(s.split("(").length == s.split(")").length) alert('ok'); else alert('not ok')
Вопрос: Почему для установки Debian предлагается скачать 3 dvd образа?

Лучший ответ:
Для установки обычно достаточно первого диска. Можно использовать также cd и cd-minimal образы, чтобы не качать лишнего.
В наборе DVD обычно идет большая пакетная база для установки в местах, где есть проблемы с доступом в интернет.

Худший ответ:
качай debian-7.7.0-i386-netinst.iso
debian-7.8.0-i386-netinst.iso      2015-01-10 14:32  277M
Вопрос: Откуда мог взяться IP 0.0.0.0 ??

Лучший ответ:
Скорее всего это означает, что на Google произошел сбой, в результате которого IP не определился.
0.0.0.0 это IP который обозначает все интерфейсы на машине, соответственно его в списке быть не должно, а значит это сбой.

Напишите им в службу поддержки, вероятно есть шансы, что на баг-репорты они всетаки реагируют.

Худший ответ:
скорее всего это «сам от себя».
virtlib.odessa.net/subbook/nag-20/ipaddr.htm

Имеются еще два зарезервированных адреса: 0.0.0.0 и 127.0.0.0. Первый назван default route (путь по умолчанию), последний loopback address (кольцевой адрес). default route используется при маршрутизации IP-пакетов, с которым мы будет иметь дело чуть позже.

обычно у 0.0.0.0 имеется маска 255.255.255.255 что говорит нам о «блуждающих» пакетах, которые где то нарочно либо ненарочно были выпущены и затерялись, либо имели целью именно вас.

www.opennet.ru/openforum/vsluhforumID6/17380.html
так же тут описана подобная проблема и её объяснение. оно сводится к тому, что в каких то условиях стек вашей машины начинает неверно идентифицировать приходящие пакеты. когда такое может произойти? сами ответье.

впрочем, вот вам подсказка

ru.wikipedia.org/wiki/DHCP
Обнаружение DHCP
Вначале клиент выполняет широковещательный запрос по всей физической сети с целью обнаружить доступные DHCP-серверы. Он отправляет сообщение типа DHCPDISCOVER, при этом в качестве IP-адреса источника указывается 0.0.0.0 (так как компьютер ещё не имеет собственного IP-адреса), а в качестве адреса назначения — широковещательный адрес 255.255.255.255.

мне кажется вам было просто лень погуглить. в наше время пакеты DHCP издает даже кофемолка по утрам.
Вопрос: Двумя годами ранее, препроцессоры CSS ругали за лишний код утверждая что верстать под мобильные с их помощью нельзя. Что мы видим сегодня?Ваше мнение?

Лучший ответ:
Ну допустим частично да. Если работать на одних миксинах, то код мог распухать. Но тут мы говорим о цифрах вроде +5кб при общем размере файла 20кб. и т.п. Это могло быть критично только если вы серфите через EDGE, а на 3G уже не чувствуется, а уж на LTE тем более. Мобильный интернет действительно стал гораздо(!) лучше сегодня, чем 3-4 года назад. Так что сейчас, это уже экономия на спичках. Кроме того препроцессоры стали умнее, помимо миксинов есть например extend теперь, который расставляет селекторы через запятую, а не копирует код. Разбухания больше нет в общем.

Худший ответ:
Смартфоны, планшеты... это не всегда подразумеваем 3G очень много входят в интернет через wi-fi, как то дома, так и в кафе, торговых центрах и т.д.
Возьмите тот же bootstrap минифицированные CSS 119кб, плюс icons fonts 210кб и JS - 36кб
и плюс ваш кастомный CSS, тоже не меньше 100кб выйдет (конечно от проекта зависит)
А он тоже для мобильной разработки...
Вопрос: Почему нет вопросов по GRASP паттернам(принципам) на тостере?

Лучший ответ:
Это от того, что на тостере преимущественно обитают полные нубы, которые не могут потратить полчаса на изучение проблемы и поиск решения, а предпочитают сходу задавать вопросы и получать решение, либо же кретины с вопросами вида "план обучения %PROG_LANG%" или "мне 100500 лет, я водитель такси, Java - не поздно ли?". Такие обитатели еще не доросли до GRASP.
А по существу - GRASP действительно более абстрактные в сравнении с GoF и не настолько четко выражаются кодом.  От чего и имеют область определения в головах программистов с бородами, которые и без помощи Q&A могут вспомнить примеры из личного опыта и найти решение.

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

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

Худший ответ:
Да походите по биржам шаблонов. Купите за 20 долларов, потратите пару дней, чтобы привести к тому, что надо. А потом уже сделаете свой уникальный дизайн\вёрстку
Вопрос: Это говнокод? Если да, то в чем именно я провинился?

Лучший ответ:
Да, это говнокод. А чем провинились я устану перечислять
 - $GLOBALS и использоваие суперглобальных массивов
 - использование собачки для подавления ошибок
 - for($count=0;isset($block[$count]);$count++) и стремные бесконечные циклы вместо foreach
 - переменные вида $ppfile и $pppfile, ваш код очень "удобно" читать.
 - смешивание php и html и css
 - по сути код состоит преимущественно из канкатенации строк... это грустно
 - использование закрывающего тега ?>

Худший ответ:
www.ozon.ru/context/detail/id/3159814 - ответит на все ваши по говнокоду сегодня, завтра и через 10.
Вопрос: Как в Yii2 поменять /web на www?

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

Худший ответ:
вы же любую папку можете сделать DocumentRoot вашего сайта. Называйте как хотите.
Вопрос: Локальный CDN

Лучший ответ:
Возможно стоит посмотреть в сторону локального кеширующего прокси типа HandyCache?

Худший ответ:
Так же посоветую кэширующий прокси, либо как вариант можно поизвращаться с DNS сервером, затем завести web-сервер, натравить нужные домены на виртуальные сервера на своём web-сервере и туда скинуть все необходимые файлы. Желательно nginx, настроить таким образом, чтобы сначала пробовал взять файл локально иначе апстрим до оригинального сервера.
Вопрос: GTD: Идеал &quot;входящих&quot;?

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

Худший ответ:
My Life Organized

2. Щелчок на иконке в таскбаре правой кнопкой -> Быстрый ввод задач -> вводим задачу, причем можно несколько сразу ввести
3. Здесь не очень, можно только добавить ссылку на файл с аудио или видеоинформацией
4. Можно настроить внутренними средствами
Вопрос: Альтернатива get_result() в mysqli?

Лучший ответ:
1. Самая удобная альтернатива - safemysql, код сократится в два раза$sql = "SELECT * FROM photos WHERE id = ?s AND authkey = ?s";
$row = $db->getRow($sql, $_COOKIE['photoid'], $_COOKIE['authkey']);
if ($row)
{
        $this->userLogged = true;
        $this->userData = $row;
        return TRUE;
}
Но использование этой библиотеки требует некоторого опыта разработки и по этой причине она подходит не всем.
2. Менее удобная альтернатива - PDO. аргумент про "нет времени переписывать" - смехотворный. 
Во-первых, надо было думать раньше, и не говнокодить функциями mysqli в коде приложения, вместо того чтобы обернуть их в класс-хелпер.
Во-вторых, не надо думать, что работа над сайтом закончена. Она только начинается. Учитывая, что в PDO одной строчкой делается то, на что в mysqli надо 10, то наоборот, при переходе выйдет огромная экономия.
3. Самый простой вариант решения проблемы - сменить хостера. Но в этом случае весь адов говнокод останется на месте.
4. Ну и самый кривой вариант - добавить больше ада и говнокода с bind_result()

Худший ответ:
php.net/manual/ru/mysqli-result.fetch-array.php / php.net/manual/ru/mysqli-stmt.fetch.php / PDO / Сменить хостера
Вопрос: Попросить за Fixed Price больше, чем было в оффере?

Лучший ответ:
Лучше не стоит, fixed price по сути несет обоюдный риск. Например если при цене в $1000 вы реально наработаете лишь на 500, вы же не скажете заказчику что упс, вы тут мне лишних 500 закинули, а просто посчитаете эту сумму бонусом за скорость. Т.е. это риск заказчика - переплатить. Так же и ваш риск, недополучить.

Худший ответ:
Не стоит из-за "копеек" создавать возможный конфликт, лучше попросить/получить хороший отзыв и в будущем лучше рассчитывать. Либо переложить часть расходов на будущий проект.
Вопрос: Что будет если не активировать Windows Server 2012 R2?

Лучший ответ:
Выключаться будет каждый час после истечения срока для активации.

Худший ответ:
Заблокируются основные функции
Вопрос: Какие есть отзывы о дистанционном обучении в IT направлении института РФЭИ?

Лучший ответ:
На системного администратора учит жизнь.

Худший ответ:
Не развод это всё. На экзаменах не валят. Они все в электронной форме. Диплом Ваши работодатели смотреть не будут. Смотрят они на компетенцию. Если хотите стать хорошим администратором всё равно вам следует много работать дополнительно. Но системно полученные знания вам однозначно помогут.
Коммерческое дистанционное образование порой даже лучше очного. Его очень-очень трудно сделать бесполезным. Вы либо платите за обучение либо нет. Контракт простой: если это хорошо, вы продолжаете обучение. Если всё плохо: вы разрываете договор. И да: 30 000 в год для регионов это не такие уж маленькие деньги.
Вопрос: Как создать массив из 10000 случайных элементов и отсортировать его?

Лучший ответ:
habrahabr.ru/post/221807
www.sorting-algorithms.com
Забудьте уже про бабл сортировку.

Худший ответ:
Взять и создать. По-моему тут проблема не в JS, а просто не в понимании самых основ программирования, таких, как тот же цикл.
Вопрос: Скрывать / Шифровать значения передаваемые из HTML в Javascript?

Лучший ответ:
Если цель — защита от перехвата, то самое разумное — HTTPS.

Худший ответ:
Алгоритм такой:

1. Пароль шифровать, например, в мд5. Можно раза три для мнимой надежности
2. Отправлять хэш
3. Сравнивать отправленный хэш с хэшем пароля из бд

нагуглил ссылку, может поможет: jscript.ru/archives/8
Вопрос: Как правильно переписать часть кода с Python на Си?

Лучший ответ:
primary_list = tuple([line.strip() for line in open('file1.txt', 'r')])
secondary_list = tuple([line.strip() for line in open('file2.txt', 'r')]) Квадратные скобки, на мой взгляд, необязательны.for item in primary_list:
    if item is None:
      continue Не уверен, что эта ветвь выполнится хотя бы раз.
Если стоит задача ускорить работу скрипта, то, на мой взгляд, проще переписать так:primary_set = frozenset(line.strip() for line in open('file1.txt', 'r'))
secondary_set = frozenset(line.strip() for line in open('file2.txt', 'r'))
with open('test.txt', 'w') as f:
    for item in primary_set&secondary_set:
        if item:
            f.write(item+'\n')
print 'Complete'
Можете добавить сортировку по вкусу.

Худший ответ:
Множества (set) нужно использовать и на c++, и на питоне. 
Считать оба файла в множества, взять пересечение, и распечатать.
Вопрос: Как мониторить linux в оффлайне?

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

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

Лучший ответ:
Книжки
www.ozon.ru/context/detail/id/32591938
www.ozon.ru/context/detail/id/4066500
Курсы
https://www.coursera.org/learn/python-network-data...
https://class.coursera.org/nlp/lecture

Худший ответ:
лучший способ понять регвыр - писать что-либо. 
в качестве обучения регвыр  JS не очень подходит, PHP в этом плане был бы поинтереснее, сугубо ИМХО