pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Отправка несерийного электронного устройства за границу

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

Худший ответ: Только что отправил из отделения Почты России, отравлением 1-го класса. Вопросов о содержимом не задали никаких. Вообще никаких!
Вопрос: Как обезопасить сервак от пожара?

Лучший ответ: Сделайте нормальную проводку? Заплатите пару литров дяде Васе электрику.

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

Лучший ответ: в дополнение к предыдущему ответу, пруф на статью:  habrahabr.ru/post/245659
статья действительно неплохая.

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

Лучший ответ: Скорее всего все упирается в кэш процессора, второй способ в 10 раз быстрее первого. В случае (int)(Math.random() * k) прирост по скорости будет в 2 раза:class Test {
	public static void main(String[] args) {
 
		int k = 10000;
		long st, en;
		int[] A;
		int length = 100000;
 
		A = new int[length];
		st = System.nanoTime();
		for (int i = 0; i < length; i++)
		{
			A[i] = k;
		}
		en = System.nanoTime();
		System.out.println("\nOne time=" + (en - st) / 1000000.d + " msc");
 
		int cache = 10000;
		A = new int[length];
		int[] temp = new int[cache];
		st = System.nanoTime();
		for (int N = 0; N < length; N+=cache) {
			for (int i = 0; i < cache; i++) {
				temp[i] = k;
			}
			System.arraycopy(temp, 0, A, N, temp.length);
		}
		en = System.nanoTime();
		System.out.println("\nTwo time=" + (en - st) / 1000000.d + " msc");
 
	}
}
Попробовать тут: ideone.com/Py6A4S
Статья: rus-linux.net/MyLDP/hard/memory/memory-03-11.html
Цитата:Более удивительной по сравнению с производительностью при чтении является производительность при записи и копировании. Производительность при записи даже для рабочих наборов с небольшими размерами, никогда не поднимается выше 4 байтов за цикл. Это указывает на то, что в таких процессорах Netburst, Intel решила использовать в кэш-памяти L1d режим с прямой записью (Write-Through), при котором скорость, очевидно, ограничена скорость работы кэш-памяти L2. Это также означает, что производительность теста копирования, в котором данные копируются из одной области памяти в другую непересекающуюся области памяти, не намного хуже. Следовательно, требуемые операций чтения выполняются намного быстрее и могут частично перекрываться с операциями записи. Самым интересными деталями измерения записи и копирования является низкая производительность в случае, как только становится мало кэш-памяти L2. Производительность падает до 0,5 байта за цикл! Это значит, что операции записи в десять раз медленнее, чем операции чтения. Это означает, что оптимизация этих операций еще более важна для выполнения программы.

Худший ответ: Сделайте систему логирования: Записывайте в файл время происшествия каждого события. Между какими двумя событиями время расти начнёт, там и проблема.Анекдот
Дорожно-ремонтное предприятие где-то во Франции приняло на работу корсиканца. Поручили ему наносить краской разметку на асфальтовой дороге. В первый день он нанес 50 м разметки. Во второй 30. В третий - 15. А в четвертый день - только 5. Возмущенный прораб приехал и спрашивает - почему дескать производительность все хуже с каждым днем ? Последовал ответ: а как же иначе ? - ведь чем дальше продвигаешься вперед с нанесенной разметкой, тем дальше ходить до ведра с краской...
Вопрос: Есть хорошие примеры использования data-*?

Лучший ответ: Удобнее всего работать с ними через jquery data - это решит проблему совместимости со всеми браузерами. 
https://api.jquery.com/data/ 
Например у нас есть кнопки по клику на которые у нас должны открываться попапы:<button type="button" data-open-dialog="#bs-example-1-dialog">Окно 1</button>
<button type="button" data-open-dialog="#bs-example-1-dialog">Окно 1</button>
<button type="button" data-open-dialog="#bs-example-1-dialog">Окно 1</button>
Далее, мы можем в js описать только один обработчик:$(document).on('click', '[data-open-dialog]', function(){
   showPopupById($(this).data('openDialog'));
});
Кроме того, ты можешь хранить в data любой json, приводя пример с тем же попапом, можно хранить данные об объекте и строить из них попап после клика на кнопку.  
Еще пример jquery плагины часто ставят флаг о том, что они уже установлены на элементе, чтобы избежать повторной инициализации. Скажем $('#search-input').autocomplete() при первой инициализации запишет элементу $('#search-input').data('isAutocompleteInstall', true) и инициализирует элемент, а при втором вызове уже не будет инициализироваться по новой. Как-то так, если я верно понял твой вопрос.

Худший ответ: Петр в чем приемущество от использования вашего примера от этого например?<input name='name' title='Необходимо задать имя обьекта' required />
при чем data-required пропустит дальше, а required нет.
Вопрос: &quot;Замедлитель интернета&quot; Существует ли такой плагин для браузера?

Лучший ответ: Для win есть плагин для Firefox: FFTrottle

Худший ответ: Это конечно офтопик, но можно ещё во freebsd использовать dummynet, там очень много возможностей.
Вопрос: Как можно изготовить собственную модель наушников?

Лучший ответ: 3D-печать, сейчас это уже не такая уж проблема.

Худший ответ: На мой взгляд, для наушников критичны соотношение прочности и веса.
Дома я пользуюсь этими.
Прежде чем заказывать 3D-печать, прикиньте, сможете вы вписаться в подобный вес (там один шнур весит под 30г).
Вопрос: Мерцание элементов интерфейса в Windows 7?

Лучший ответ: Если подобное наблюдается и в интернетах, попробуйте:
1.Click Start.
2.In the Search box, type regedit and press Enter.
3.Delete the following keys:
HKEY_USERS\.DEFAULT\Control Panel\Desktop\HungAppTimeOut
HKEY_USERS\.DEFAULT\Control Panel\Desktop\WaitToKillAppTimeOut
HKEY_CURRENT_USER\Control Panel\Desktop\HungAppTimeOut
HKEY_CURRENT_USER\Control Panel\Desktop\WaitToKillAppTimeOut
HKEY_CURRENT_USER\Control Panel\Desktop\WaitToKillServiceTimeOut
 Перезагрузите комп.

Худший ответ: У меня данная проблема была когда у процессора была очень низкая температура (процессор AMD FX-8320) t =~ 10-20 градусам (скорее всего из-за того, что поставил систему водного охлаждения в купе с кучей корпусных куллеров) и все жутко мигало (в частности интерфейс самого Windows), потом я его разогнал (скрутил процессорный куллер на минимум), и переставил тему на "Windows Aero" температура поднялась и данный баг пропал!
Вопрос: Как должна взаимодействовать база данных с клиентскими приложениями?

Лучший ответ: Для полноценной работы посмотрите в сторону REST API

Худший ответ: Нужно контроллер, который выполняет роль прослойки от веб-клиента до базы сделать универсальным и конфигурируемым. Например, контроллеру из вне приходит запрос (не важно от кого именно):
[{action: getArticle, target: android, count: 20, hash: 5674%4%$7^5bbss, и так далее...}]
И когда наш контроллер умеет разбирать и анализировать пришедший в запросе джейсон, ему уже понятно что делать дальше. К примеру я в своем сервисе сделал так, если в запросе указано что ajax: true то я отдаю только данные в виде json, если указано что ajax: false, то я отдаю сформированные html код. Главное продумать универсальный контроллер, не забывая про безопасность. 
А кому надо раздаем API типа если хотите получить 20 записей отправьте такой-то запрос...
Конечно есть разные типы запросов под разные нужды и с разной защищенностью, я привел лишь общий смысл работы.
Вопрос: Названия it-должностей на английском?

Лучший ответ: Специалист по поддержке пользователей — Technical Support Engineer/Desktop Support Engineer;
Системный администратор — System(s) Administrator;
Сетевой администратор — Network Administrator;
Системный инженер — System(s) Engineer;
Архитектор — Architect (по областям, например Software Architect, Infrastructure Architect, и т.д.);
Ведущий инженер/Старший инженер — Senior Engineer;
Программист/Разработчик — Software Developer;
Тестировщик — Tester;
Руководитель проектов — Project Manager;
Руководитель группы — Team Leader;
Начальник отдела ИТ/Технический директор — Chief Technology Officer (CTO);
Руководитель информационной службы/Директор по информатизации — Chief Information Officer (CIO).

Разница между CIO и CTO (если упрощенно): CIO — человек бизнеса, который что-то понимает в ИТ, CTO — технический человек, который что-то понимает в бизнесе.

Худший ответ: Вот здесь можно посмотреть, что стоит за названиями - www.cepis.org/index.jsp?p=940&n=966
Смотрел CEPIS, Sfia и eCF. CEPIS наиболее полно и точно прописывает деятельность.
Вопрос: Необходимый уровень для работы джуниором?

Лучший ответ: Кто бы ещё работодателю рассказал об этом.

А то, набирают порой Junior'ов, а требования как к Senior'у.

Худший ответ: Junior — это специст, который способен выполнять возложенные на него функциональные обязанности, со «скидкой» на отстутствие опыта работы в команде.
Вопрос: Странное падение напряжения на диоде?

Лучший ответ: Вы, насколько я понимаю прямо на плате его проверяли, даже не выпаивая? :)

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

Лучший ответ: Читать внимательно, что есть такое $_REQUEST, потом проверить что находится в $_GET['id'], $_POST['id'], $_COOKIE['id'], заглянуть в конфиг на предмет опций  request_order и variables_order.

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

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

Худший ответ: Если в планах графики то без БД вряд ли обойдетесь.
Вариант: 
- приложение выполняется периодически (как удобно - планировщик, сервис, etc.) и данные пишет в БД 
- WEB интерфейс отображает данные не с приложения а с БД
- при необходимости делаете кнопку на которую вешаете запрос актуальных данных (иногда может пригодиться).
Вопрос: Каковы Ваши впечатления от работы с fastvps и firstvds?

Лучший ответ: Логичнее было бы сесть если совсем хорошо то на digitalocean.com
Если немного полегче vdsina.ru

Худший ответ: Остановился на firstvds.ru с вот такой конфигурацией:
Пока что полёт нормальный. Главное, что виртуализация KVM, а не OpenVZ
Вопрос: Кто-нибудь использовал vk api или конкретно библиотеку vk Python в Google app engine?

Лучший ответ: Обычно urllib2 вполне хватает.

Худший ответ: При работе с Django, можно в корень проекта добавить папку для "левых" либ (например, libs), добавить в нее пакет requests, и в manage.py добавить:import os
os.sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'libs'))
Вопрос: Стоит ли менять Milestone на HD2?

Лучший ответ: Стоит менять на htc incredible S или sensation
Смысла в старом унылом hd2 ну никакого.

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

Лучший ответ: А зачем по вашему нужны циклы? Скажемvar arr = [];
for(var i =0; i < 10; i++) {
   arr.push(i);
}
это же можно записать просто:var arr = [];
arr.push(0);
arr.push(1);
arr.push(2);
//...
arr.push(9);
смысл тот же, и второй кусок кода будет работать быстрее... зачем тогда цикл?

Худший ответ: Например, вчера пользователи моей библиотеки (палитра цветов материального дизайна для Less, Scss, Stylus) захотели генерировать себе селекторы и пришлось написать примесь для их генерации. Вручную ~100 селекторов писать никто не хочет. Таким же способом строится, например, сетка в Bootstrap.
Вопрос: Что делает команда touch под windows?

Лучший ответ: Под unix-like операционными системами touch либо обновляет дату последнего изменения файла, либо создает новый пустой файл. Под виндой точно такой команды (из коробки) нет. Создайте этот файл из своего редактора/IDE/файлового менеджера (в проводнике можно создать guplfile.txt и переименовать в gulpfile.js). 
Можно поставить git (все равно понадобится), с ним идет т.н. git bash, в котором есть все или почти все юниксовые утилиты.

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

Я пользую cmder. В основных настройках по-умолчанию или при запуске нового окна консоли надо выставить bash:bash - включение линуксового интерпретатора команд. Эта команда в ней работает.
Вопрос: Firefox: отслеживание действий браузера

Лучший ответ: Сие умеет делать Firebug.

Худший ответ: спасибо… чет я лазил и не нашел… оказывается версия древняя совсем была :)
Вопрос: Почему в  JavaScript срабатывает else?

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

Худший ответ: И вообще используйте лучше Array.prototype.findIndex из ECMAScript 6, тем более, что в Fx25 он уже реализован нативно:if(!Array.prototype.findIndex)
    Array.prototype.findIndex=function(predicate) {
		var list=Object(this);
		var length=list.length>>>0;//ES.ToUint32
		if(length===0)
			return -1;
		if(typeof predicate !== "function")
			throw new TypeError("Array#findIndex: predicate must be a function");
		var thisArg=arguments[1];
		for(var i=0, value; i<length && i in list; i++){
			value=list[i];
			if(predicate.call(thisArg, value, i, list))
				return i;
		}
		return -1;
	}
Вопрос: Кому нужна помощь в крупном проекте на никсах?

Лучший ответ: Если хочешь поавтоматизировать что-то на линухе, могу предложить интересный квест.
На сколько мне известно, ты работаешь с сетевыми железками, в том числе микротиком. Вот представь, что у тебя таких микротиков хотя бы тыщи две. Попробуй скриптами автоматизировать сбор с них статистики, бекап конфигов централизованный, учет загруженности портов.
Как сделаешь статистику, представь, что нужно найти один порт из 10 тыщ с определенным описанием. Как ты быстренько сможешь найти?
Еще один тебе кейс на автоматизацию. Есть несколько тысяч сетевых устройств, часть из них находятся в кольце (например, 10 штук в одном кольце, колец 200 штук, используется xSTP). Ты принимаешь работу у подрядчика. Тебе нужно к концу дня определить, где кольца незамкнуты (лежат аплинки), пнуть подрядчика идти их замыкать.

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

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

Худший ответ: Раз в сутки проводится акция - найди на любой странице среди товаров рекламный баннер, кликни на него и получи скидку (кликающий должен быть авторизован на сайте).
Если при авторизации происходит установка cookie (без всяких javascript-изысков), то, на мой взгляд, вполне реально написать такого бота, например, на python (используя библиотеки requests и lxml для разбора страницы). Если javascript-изыски все же присутствуют, то, возможно, придется использовать selenium/phantom.js.
Вопрос: Как решить задачу?

Лучший ответ: Во-первых, непонятно, при чем тут insert
Во-вторых, колонка status в данном случае вообще не имеет смысла, если ее значение можно вычислить на лету.

Худший ответ: INSERT - добавляет новую запись в БД. 

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

Если нужно в раннее добавленных записях установить значение поля status, то нужно использовать запрос типа UPDATE. 

Что то вроде:
UPDATE table_name SET status=‘yes’ WHERE // тут условие с DATEDIFF
Вопрос: Как разработчику выделять время для изучения новых технологий и самообразования?

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

Худший ответ: Мне до работы 15 минут в одну сторону, семьи и детей нет :) Так что время на это есть.
Да и во время работы стараюсь пробовать что-то новое и интересное, где это возможно.
Вопрос: Почему некоторая сумма находится в разделе «In Review»?

Лучший ответ: Ничего не нужно, почасовые контракты так устроены. Эти все периоды описаны в FAQ. В среду вы получите деньги.

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

Лучший ответ: m.habrahabr.ru/post/250569
Посмотрите эту статью, будет весьма полезно.

Худший ответ: Чтобы не прописывать все файлы ручками можно использовать wildcards.
Для вендоров я обычно делаю отдельную переменную, в которой прописываю все пути к вендорам.
Насчет конката и мимифая вендоров:
Я конкачу в отдельный файл, т.к. он обновляется намного реже чем файл со скриптами и как следствие может грузиться из кеша.
Вопрос: Google maps API или нет?

Лучший ответ: Посмотрите на 
api.yandex.ru/maps
leafletjs.com
api.2gis.ru/doc/maps/quickstart
Для крупных городов России я бы однозначно предпочел яндекс (или для некоторых городов 2gis)
Для мелких - народные карты яндекса или leafletjs (он может брать данные с OSM)
Для мира - гугл.

Худший ответ: Google API конечно все это умеет и даже больше. Достойная альтернатива ему только API от Яндекс карт.
Вопрос: Какие проекты на Python не связанные с веб-разработкой популярны на фрилансе?

Лучший ответ: Парсинг, скрейпинг сайтов.
Доработка всякой скриптоты, портирование кода с / на питон.

Худший ответ: нет таких.
Вопрос: Возможно ли использование APC (APCU) только для кеша ключ => значение (без кеширования байткода) в паре с ZendOpcache?

Лучший ответ: APCu (новый APC, выпилен кеш опкода, оставлен только пользовательский кеш)

Худший ответ: Правильно ли я понял, что если в настройках xcache  отключить кеш опкодов то получается можно использовать два кешера Opcache и Xcache? Если так то это повысит скорость работы сайта? Спрашиваю потому что стоит php 5.6 с opcache, но VPS все равно с трудом тянет, а движок (LIvestreet) рассчитан на работу с типами кеширования file, memory, xcache.  Возможно ли скомбинировать opcache и xcache и есть ли смысл? Спасибо.
Вопрос: Как вам браузер ТОР?

Лучший ответ: Бесплатно и быстро - расширение для браузера ZenMate

Худший ответ: Надо для тестов меня ip или использовать прокси.
Анонимность нафиг не нужна.Для этих целей лучше прокси купить, хотя и ТОР можно, но медленно.Нашел решение, браузер ТОР, вот вопрос про безопасность? Так вам IP менять или безопасность обеспечивать7
Вопрос: Чем отличается «Wordpress хостинг» от обычного PHP шаред хостинга?

Лучший ответ: Мне кажется, что маркетинговый. :)

Худший ответ: «вордпресс хостинг» тоже самое что сайт wordpress.com с возможность завести там свой бложек, иногда со своими любимым темаи и плагинами.
Народ просто готовит вордпресс для установки в один клик, выделает ресурсы сервера и берет за это небольшую денежку, имея одну общую инсталляцию вордпресс для всех сайтов, управлять этим и обновлять это достаточно легко.
всё таки настраивать впс/вдс/сервер — это один уровень знаний, а дать доступ к админке вордпресса менеджеру — это совсем другой, не требующий знаний кучи технологий
Вопрос: Что такое «продающий сайт»?

Лучший ответ: Он помогает посетителям принять решение о покупке и совершить ее.

Худший ответ: Продающий сайт, чаще всего так же является лендинг пейджем. У него единственная задача, но если у терминатора, это найти и уничтожить. То тут довести клиента до целевого действия, будь то звонок, переход на сайт или онлайн покупка.
Вопрос: Сортировка по текстовой дате в php?

Лучший ответ: >> Может есть простой способ перегнать эту текстовую строку с датой в что-то другое — более удобоваримое для сортировки
$timestamp = strtotime("Sun May 01 00:00:00 +0000 2011"); // $timestamp  == 1304208000


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

Лучший ответ: Верстальщику не нужен, ни блокнот, ни калькулятор. Калькулятор как и блокнот есть в самом PC, может еще счеты и бубен рядом положить для солидности? :) Выполнять арифметические действия можно даже в консоли. К примеру $ echo ((10+(270/30)))  А идеи... Я не знаю, какие могут быть идеи по верстке. Верстай да верстай. Фрон-енд возможно и требует записей, но верстка это минимум умственных усилий и максимум рутинных однообразных задач :) Я сам верстальщик, так что знаю о чем говорю :)

Худший ответ: Писать проекты в нем
Вопрос: Как отслеживать события JS в Chrome?

Лучший ответ: в консолиgetEventListeners(element)
вернет объект в котором надо найти событие а в нем listener: function, правой кнопкой по функции -> Show function definition

Худший ответ: В консольке хрома события можно ловить же...