pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Файловый сервер для небольшой организации

Лучший ответ: Так, самба  - правильный выбор. Что касается мультилогина, то сама политика неправильная! Пользователь должен логиниться ТОЛЬКО под одним логином! Все права на директории и файлы нужно устанавливать для одного пользователя. Для этого существует масса срадств - начиная от прав на ресурсы и заканчивая правами пользователей/групп  на доступ в каталогам и файлам.

Худший ответ: Рассматривал вариант Samba конечно меня воодушевило но есть минусы которые очень сильно напрягают. К примеру авторизовался я под одним логином в одну директорию, а если приходится в другую директорию зайти где уже другой пользователь и права выдает ошибку, пока не выйду из под первого пользователя. Кстати посмотрел куча статей и форумов и как понял уйти от этой проблемы нельзя.
Не совсем понятно, в чем у вас проблема. Это нормально, что с вас запрашивают аутентификацию для каждой папке, если права не заданы для уже аутентифицированного пользователя. 
Давайте на пальцах:
Есть каталог /share/user1 - у него заданы права для это пользователя или группы в которой он живет. Есть каталог /share/user2 - у него свои права и другая группа. В этом случае будет 2 запроса имени пользователя. Какой случай у вас?
Вопрос: Совет в изучении ООП JavaScript?

Лучший ответ: Как быстро врубиться в ООП в JS:
Все объекты. У объектов есть конструктор и прототип. Создание нового объекта - копирование прототипа в новый экземпляр объекта и вызов конструктора. В качестве контекста вызова конструктора будет использоваться экземпляр объекта. Конструктор - просто функция которая по умолчанию возвращает контекст вызова, но вы можете там сделать return и вывести любую херню.
Важно понимать что прототип копируется. То есть если вы создали 10 инстансов одного типа, потом поменяли прототип, например добавив метод), то у первых 10-ти инстансов этих методов не будет, а у новых - будет.
Наследование - просто объявляете тип со своим прототипом. В силу некоторых особенностей от некоторых типов не так то легко отнаследоваться без кастылей (например от массива).
Для упрощения работы в ES2015 новый синтаксис для объявления объектов своих типов.
Принципы ООП такие же как и везде, единственное что для инкапсуляции стоит еще про модули почитать так как в JS (как и в некоторых других языках) нет модификаторов доступа.

Худший ответ: Можно еще через OOP в Ruby. www.theodinproject.com/ruby-programming/object-ori...
Берете OOP в Ruby, отсекаете Классы и Мета-классы, добавляете (вместо классов и метаклассов) — свою реализацию типа https://github.com/dfilatov/inherit или любую другую — получаете классы в JS.
ES6 классы, насколько я знаю, это просто сахар, так что не питайте надежд — оно не далеко уйдет от того, что есть сейчас, просто появится возможность писать более коротко.
Вопрос: Агрессивный напоминатель?

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

Худший ответ: Заведи жену.
Вопрос: Стартапы: Команда

Лучший ответ: В интернете Вам никто не сможет дать гарантий, что Вас не кинут. Просто пообщайтесь с кандидатом заранее. Посудите, насколько трезво он мыслит и не гоняется ли за звездами. Есть категория, у которой слова с делами сильно расходятся, но при этом их ЧСВ огромное. При подборе персонала не видя в глаза кандидатов — нужно иметь не только хорошее чутье, но и удача.
И да, не советовал бы брать тех же кодеров среди друзей. Это может обернуться очень большой проблемой в будущем. Если все же хотите взять друга, потому что обещали ему место в проекте по дружбе (что уже является ошибкой), то не ставьте их старшими. На самом деле, дружба-дружбой, а бизнес и работу в это впутывать нельзя.

Худший ответ: Поищите в сообществах — дайте там информацию (например в сообществах PR). Напишите объявление в соц.сетях — может дать неожиданный положительный результат.
Вопрос: Какие учебники лучше C# для начинающего?

Лучший ответ: Предложу несколько вариантов, а Вы уже подберете для себя более подходящий:
из того что читал:
 - Шилдт, не знаю как другие его книги, но эта нудновата (многи за это его не любят, по мне автор хороший);
 - Троелсен, мне понравилось, подробно и доступно описано, приятно читать;
 - Рихтер, о самой платформе (фреймворке), читать обязательно;
не читал (но многие рекомендуют):
 - Стиллмен, из серии "Хэд-фёст", издания славятся уровнем подачи материала;
 - Албахари, как альтернатива Троелсену;
 - Нейгел, для "противников" Троелсена;
 - Гриффитс, нужен неплохой начальный уровень.
Успехов!
upd: чуть не забыл. В Visual Studio есть русский мануал по C#, с ним тоже рекомендую познакомиться.
А про книги отзывов и мнений очень много разных.

Худший ответ: Герман О.В., Герман Ю.О "Программирование на Java и С# для студента" очень хорошо и доступно описано 2 языка.
Вопрос: Как сделать такой логотип?

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

Худший ответ: Создаёте новый слой заливаете любым цветом, 
а дальше в эффектах слоя выставляете заливку в 0 и радиальный градиент (или линейный, на Ваше усмотрение). 
У крайнего правого бегунка непрозрачность в 0.
И ещё кучей способов, лично мне удобнее так - можно в любой момент подкорректировать.
Вопрос: Несколько .git, но общая система тикетов и wiki?

Лучший ответ: Взять и начать вести общую систему тикетов и wiki.

Какую это уже вопрос вкуса.

Худший ответ: Никогда не пользовался подобной фичей, но судя по всему, redmine умеет несколько репозиториев на один проект.
www.redmine.org/projects/redmine/repository/revisions/8650
www.redmine.org/issues/779
Вопрос: Дизайн сайта в фотошопе, как сделать всё нормально?

Лучший ответ: ого! Что???
2)Чем фотошопный дизайн лучше/хуже написанного дизайна?
- это Вы что ли дизайн кодом делаете? Это вообще студия или разработчики вольного типа? Если студия то это крах!
Все дизайны сначала "рисуются" и только потом пишется код
Так вот дизайнеры это те кто рисуют, а кто код пишет это как минимум верстальщик.

Худший ответ: Он просто рисунок рисует а потом по нему другой человек (верстальщик) верстать будет. В фотошопе быстрее чисто внешний вид сделать утвердить и отдать "в производство".
Вопрос: Как понять принципы ООП?

Лучший ответ: Чтобы понять принципы ООП, книги не требуются. Взгляните вокруг себя. Всмотритесь в любой объект в реальном мире, опишите его наиболее подробно (материал, размер, цвет, вес, плотность, составные части и т.д.), это будут его свойства. Опишите, что и каким образом этот объект умеет делать (включаться, складываться, кушать электроэнергию, взаимодействовать с другими объектами или окружающей средой и т.д.), это будут его методы. Подумайте, для чего используется этот объект, что ему нужно изменить или добавить, чтобы использовать в других условиях или целях, и на основе всех собранных знаний создать более удобный экземпляр, это будет наследование и полиморфизм. Теперь немедленно забудьте обо всем, используйте объект по назначению, это будет инкапсуляция. Дальше останутся только тонкости выбранного Вами языка, шаблоны, методологии и прочаяие ересь тренды.

Худший ответ: Сначала практика на объектно-ориентированных языках(с качественной IDE, чтобы на лету видеть работу инкапсуляции и наследования), а потом книги(для систематизации полученных знаний).
Вопрос: Как в Vusial studio разделить проект на элементы а потом сделать их одним целым?

Лучший ответ: Вы имеете ввиду разбить проект на несколько файлов?
Вам понадобится создать по два файла для каждого модуля: заголовочный (с объявлениями) и собственно файл с реализацией (определением). Файлы с объявлениями имеют расширение .h .H .hpp и так далее.
main.cpp: определение функции main.// Следующая строка при компиляции будет заменена на содержимое файла helloworld.h
#include "helloworld.h"

int main(int argc, char** argv)
{
    helloworld(); // Вызываем функцию определённую в другом файле.
    return 0;
}
helloworld.h: объявление функции helloworld// Следующая конструкция называется include guard.
// Благодаря ней вы не сможете вставить содержимое этого файла дважды,
// что поможет вам избежать ошибок переопределения.
#ifndef HELLOWORLD_H 
#define HELLOWORLD_H

// Объявление функции.
// Если функция объявлена но не определена в данном файле,
// компилятор будет искать её реализацию в других файлах.
void helloworld();

#endif
helloworld.cpp// Снова вставляем содержимое файла helloworld.h
#include "helloworld.h"

#include <iostream>

// Определяем функцию.
void helloworld()
{
    std::cout << "Hello, world!";
}

Худший ответ: Объектно-ориентированное программирование (C# и Vi...Запись семинара на тему "Что такое ООП и с чем его...
Вопрос: Сканеры штрих-кодов и PHP

Лучший ответ: Сканеры штрих-кода (из тех, с которыми мне довелось работать) обычно работают в двух вариантах: 
1) Эмуляция клавиатуры (те, кто подключаются через PS/2 или работают как USB HID)
2) Эмуляция COM-порта (те, которые соответственно втыкаются в компорт либо являются USB Serial Device)

Взаимодействие с первыми аналогично клавиатуре. В чем их плюс — возможность работы даже с тем софтом который не знает что такое «сканнер штрих-кода». Для программы это будет выглядеть полностью аналогично как если бы оператор набрал на клавиатуре артикул товара. (то есть полностью прозрачно для программ)
Соответственно, сериальные устройства для тех программ, которые знают что такое сканнер штрих-кода и умеют с ним работать.

Соответственно, вопрос. Вам для каких нужд? Если Вы хотите минимальными затратами организовать «рабочее место оператора» с взаимодействием через веб — то вариант с USB HID — это ваш вариант. Вы просто с помощью PHP рисуете форму, с полем, куда JS-ом выставляете фокус. Оператор «пикнув» сканнером штрихкода просто введет туда цифры. (И незабываем, какой еще ОГРОМНЫЙ плюс возникает, если штрихкод потерт и нечитается — оператор просто набивает артикул на клавиатуре в это поле.)

Вариант с Serial-подключением имеет плюсы лишь когда вы организуете выделенное узкозаточенное рабочее место.

Худший ответ: Если сканер по компорту подключается, то написать сервис на сях и повесить на какой-нибудь порт. Соответственно, из пхп общаться со сканером через этот сервис.
алгоритм такой:
1) открывается страница — посылаем команду на включение сканера
2) аяксом обращаемся за последним считанным штрихкодом и выводим его.
3) по завершению — выключаем сканер.
Вопрос: Кириллица в vim'e

Лучший ответ: Понимаю, что "Вопрос задан более 3х лет назад", но может кому интересно будет )) 
Перед запуском vim в консоли делаю chcp 1251
и потом, если возникают проблемы, обратноchcp 866
В .vimrc такие настройки:if has( "gui_running" )
...
else
    if has( 'win32' )
        set encoding=cp1251
        set termencoding=cp866
        set keymap=russian-jcukenwin
    endif
endif
Переключение языков производится сочетанием Ctrl-6. Подробнее см. справку в Vim :help keymap
:help enc
:help tencUPD:
Поюзал консольный Vim под виндой, и обнаружил ещё кое-чтоЕсли в свойствах консоли выбрать какой-нибудь TrueType шрифт, то нужно делатьset termencoding=cp1251Чтобы не запариваться с переключением chcp 1251 ... chcp 866, можно сделать алиас для cmd.exe: DOSKEY vim=chcp 1251 $T vim $* $T chcp 866, поместить этот алиас в скрипт и настроить автоматическое выполнение скрипта при старте cmd.exe (будет что-то вроде .bashrc для bash). Про алиас и скрипт подробнее здесь: stackoverflow.com/a/21040825/3047301.
ОС Win 7 x64, Vim 7.4.

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

Лучший ответ: Первый вариант:var a = 0, b = 0; имеет несколько явных недостатков:
1. При наличии системы контроля версий, добавление новой переменной будет неинформативно. Будет изменена вся строка, что незначительно усложнит ревью кода.
2. Субъективно подобная запись мешает восприятию кода. В ней плохо различимы переменные без присвоенного значения. Т.е. var a = 0, b = 0, c, d = 0;Второй вариант:var a = 0;
var b = 0;
Является наиболее расширяемым в плане версионирования (не имеет проблемы с выставлением запятой, как в приведенном ниже третьем варианте), но перегружен служебными словами.
Лично я предпочитаю пользоваться этим синтаксисом в nodejs модулях для подгрузки библиотек в верхней части скрипта:var fs = require('fs');
var path = require('path');Третий вариант:var a = 0,
    b = 0;
Несколько проигрывает второму в плане удобства версионирования (при добавлении переменной С будет изменено две строчки, а не одна), но наиболее распространен в js best practices. Одинаково применим как с выравниванием по 4 пробелам для выстраивания переменных в столбик, так и без надуманного выравнивания.
Из минусов этого варианта, можно отметить забытую запятую после a = 0. В таком случае переменная b будет объявлена глобально, если не используется "use strict"

Худший ответ: Лучше использовать второй вариант. Более дружелюбный для CVS.
Вопрос: Что изучить? Angular 2 или Ember 2?

Лучший ответ: Посмотрите вот это видео https://www.youtube.com/watch?v=DCeNCr2tKOI где рассказано про фреймворки.

Худший ответ: который, я учить не хочу
TypeScript это текущий стандарт EcmaScript + реализованные драфты + информация о типах доступная на момент сборки проекта. То есть учить его и не нужно, это все тот же самый javascript. Если вы разберетесь с es2015 и драфтами из stage1 то вы знаете TypeScript.
Angular и Ember - это огромные проекты потому для них важна информация о типах для более качественного статического анализа, а следовательно TypeScript идеальный вариант.
Что перспективнее учить.. пожалуй Angular2 так как распространенность выше. Но разобравшись в Angular2 перейти на React или Ember будет не так уж сложно. Принципиальных различий у этих фреймворков не много и все развиваются примерно в одном направении.
Вопрос: На ноутбуке постоянно слетает Windows

Лучший ответ: и еще, я всегда делаю образ системы через acronis true image.
Вместо переустановки восстанавливаю из бекапа, занимает 5 минут.
В Вашем случае, раз часто все херится, если не найдете причину, возможно будет полезна.

Худший ответ: Судя по ответу Виктории, у вас наглухо убитый винт:
Итог теста в Виктории — Mb: 238475 | 100.0%
(5ms)- 1703711
(20ms)- 199735
(50ms)- 4126
(200ms)- 97
(500ms)- 27
(1.5s)- 33

Дефекты: 73

73 сектора заремаплено, 33 с временем доступа более 1.5 секунд — винт 100% на свалку.
Вопрос: Почему не работает автозагрузка в linux (другие способы автостарта ssh туннеля)?

Лучший ответ: -i ~/.ssh/mykeys.pem
Он ищет приватный ключ в домашнем каталоге текущего пользователя. Когда вы запускаете скрипт от себя -- в вашем, когда от init -- в /root

Худший ответ: Отчет для любителей детективов. Шерлок отдыхает.
В общем, не стартует система. То стартует, то не стартует, в зависимости от того, через сколько секунд отсчета ты выберешь систему для загрузки. 
Запустился в фейлсейф режиме. Подключаюсь по ssh через терминал к серверу - подключается. Теперь через порт 5544 с домашнего компа подключаюсь через этот сервер к тому, колдовство над которым здесь обсуждалось. А мне выдается connection refused, хотя раньше всегда абсолютно все подключалось без проблем. 
Иду обратно к объекту колдовства и замечаю, что в терминале перед подключением к серверу висит сообщение, что через порт 5544 ничего не проходит. Внимание, момент осенения. Понимаю, что порт 5544 уже используется. Но в crontab я все убрал! Так что же с портом? Так ведь он уже используется! Так значит изначальный скрипт работал все это время! Я-то думал, что если скрипт работает, то на рабочем столе должно вылезти окошко терминала с подключенным сервером. А оказывается, это все где-то в фоне происходит (вот прямо сейчас я не понимаю, как мне попасть в этот терминал, если он запускается в фоне, хорошо, что мне это не нужно). Тут все начинает распутываться, я понимаю, что проблемы с загрузкой системы были из-за интервала запуска autossh в 20 секунд. Т.е. если я успевал быстро войти в систему, то она загружалась, если я ждал 5 секунд, пока вход будет произведен автоматически, то там не успевало загрузиться ssh из init.d. 
А теперь еще прикол. Из crontab при загрузке системы мой скрипт, оказывается, не выполняется, но выполняется другая программа (btsync). Я этого не знал и поэтому решил, что этот способ мне подходит. В то время, как по ssh подключение осуществлялось из скрипта из init.d через автозагрузку update-rc.d. 
Вот так вот.
Вопрос: Как активировать input file поля с помощью click()?

Лучший ответ: е мае ответ то прост - кнопка субмитит форму )
Для того что бы не было субмита$(function () {
    $("#formUploadBtn").click(function () {
        $("#formInput").click();
        return false;
    });
    $('#formInput').change(function () {
        $('#test_form').submit();
    })
});
jsfiddle.net/mLgeLtgy

Худший ответ: focus() на поле не пробовали ставить?
Вопрос: Можно ли создать сервис вопрос-ответов ан базе Wordpress?

Лучший ответ: да, можно
1) можешь написать сам
2) можешь найти и установить плагин, например https://wordpress.org/plugins/dw-question-answer/

Худший ответ: А кроме этого есть еще плагины?
Вопрос: Как запретить индексировать содержимое модального окна?

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

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

Лучший ответ: Проект в вашем случае разделяется на вот такие основные составляющие:
1. Легализация. Вам необходимо разрешение от надзорного органа на использование частоты\частот и лицензия оператора (на передачу и тыды и тыпы). Это скорее всего минимум, возможно что-то ещё. 
2. Организация и расчёт самой сети. Нужно учесть препятствия, высоковольтные провода, наводки от заборов \ крыш \ трансформаторных будок, отражения от домов и много всего. Лучше всего использовать профессиональный софт (например Ekahau) и любую простую точку доступа на аккуме, перенося её от разных углов до центра зоны покрытия и измеряя силу и карту покрытия. Этот же софт поможет сделать рассчёт. А если ещё и GPS приёмник по синезубу подключить - буде вообще всё круто. 
3. Сетевая часть. Нужно железо и сеть. Можно строить на чистом беспроводе (беспроводные линки между точками и вещание само собой тоже по воздуху), можно ложить медь \ оптику, можно брать 5ГГц для опорных каналов и на 2,4 вещать. Я рекомендую Routeboard ))
4. Биллинг, роуминг, оплаты, тарифы, QoS. Вообще все эти задачи можно решать без привязки к среде передачи. Такого навалом на просторах по запросу "биллинг". В том же Mikrotik есть встроенный, но можно взять что-то иное, трафик инспектор, например. 
В теории дальность вашего вайфая и его качество будет в первую очередь зависеть от клиентских устройств, а не от операторских, так как первые будут иметь куда более слабые приёмопередатчики, чем ваши "метровые 30+ db" антенны.  В целом проект крутой, но организовать его просто задавая на тостере вопросы и получая ответы - не реально. Нужен профи с опытом и он должен быть у вас там, на месте, в посёлке.

Худший ответ: На сколько я понимаю, оборудования Ubiquiti - "офисного" уровня, а не "провайдерского". 200 абонентов - это до 2 000 устройств. И все эти устройства должно тянуть оборудование Ubiquiti???
Мне кажется, этим подходом вы закладываете себе проблемы на перспективу. 
Делайте как делают провайдеры: или ADSL, или GPON (можно будет и телефонию, и телевидение в эту же оптику запустить), или сеть 4g. У абонента стоит роутер (ADSL, оптический или 4G), и дальше - его проблемы. Разовые вложения в нормальное оборудование (цена подключения для абонента) - и голова не болит.
Вопрос: Под какие значения @media адаптировать дизайн сайта?

Лучший ответ: ИсточникИсточникЕщё статистикаБрейкпоинты фрэймворковСтаренькоеНа закускуViewport Sizes
UPD. Из презентации Яндекса о адаптивности интерфейсов:

Худший ответ: Смотря как дизайнер задумал. Если всегда на 100% экрана, то тут уже зависит от разработчика. Мне обычно хватает пилить до max 1920px. А так медиа запросы могут быть разными. Если у тебя допустим блок текста всегда на 100%, внутри обычным текст, то нафига ему медиа запросы? Задаешь ему ширину в 100% и он у тебя уменьшается. Если два блока с текстом, то по 50% задал, на ширине при 320-479 просто убрал обтекание и выровнял по центру, все. 
Тут по ситуации надо смотреть, но если не юзать бутстрап, то примерно вот как получается:
320 - 479;
480 - 639;
640 - 767;
768 - 959;
960 - 1023;
1024 - 1279;
1280 - 1439;
1440 - 1599;
1600 - 1920;
Да и то тебе не все могут понадобиться. Смотри по ситуации.
Вопрос: Какое железо собрать для графического дизайнера?

Лучший ответ: 1)Память - это самое главное, фотошоп ворочает огромными объемами и если они не влезают в память будут тормоза. Чем больше тем лучше, минимум 16Гб. На скоростные характеристики внимания можно не обращать.
2)Процессор - вторая по значимости вещь, неплохо бы i7, хотя i5 по соотношению цена/производительность более оптимален.
3)SSD - на нем система, фотошоп, подкачка системы, и подкачка фотошопа, неплохо если бы еще на нем осталось место для  тех файлов с которыми работаете в данный момент. 
На HDD по идее лучше хранить только архивы, и файлы с которыми не работаете.
4)Видео на старте пойдет интегрированное.
В фотошопе от видеокарты мало зависит, хотя при наличии мощной видеокарты можно ускорить некоторые действия, например работу некоторых фильтров.
А вот в 3d это главный рабочий инструмент, но опять же если ничего глобального и тяжеловесного делать не будете, то справится и встроенная.
Поэтому с видеокартой логика следующая - начинайте на встроенной, а хорошую покупайте когда почувствуете острую необходимость в ней.
Материнскую плату есть смысл брать недорогую, лишь бы был нужный функционал, а особого функционала вам от материнской платы не надо.
Блок питания в зависимости от видеокарты, чтобы гарантированно тянул. Если видео встроенное, то пойдет любой мощности, лишь бы производитель был нормальный.

Худший ответ: 1) потом второй раз заплатите за проц помощнее? 8-16 RAM. 
32-...
Вопрос: Android телефон до 15 тысяч

Лучший ответ: А я купил за 8500 абсолютно новый Google Nexus One на Ebay (с доставкой в Россию) :)

Худший ответ: galaxy s можно за 14900 взять
Вопрос: Какой самый лучший путь развития до архитектора ПО?

Лучший ответ: Типовая карьерная лестница архитектора:

Худший ответ: всё выше перечисленное, ну и конечно работать-работать-работать
Архитектор, это тот человек, который знает как работает и устроенно множество технологий и может для конкретной задачи выбрать наиболее подходящие технологии и решения и конечно может объяснить свой выбор.
Вопрос: Где найти пример подбных «карточек»?

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

Худший ответ: Используется Masonry.
Ну а эффект появления блока при наведении реализовать тривиально. Просто кладём название/цену в блок, туда же описание. При наведение на родительский блок показываем блок с описанием, показываем бордер, увеличиваем z-index всему этому добру. Вполне возможно реализовать на чистом CSS.