Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Какой редактор выбрать Sublime, Brackets, Atom?

Лучший ответ:
Раньше работал на Sublime , сейчас перешёл на Atom.
1. Sublime выигрывает в производительности безусловно, но если верстать не порталы или интернет магазины с большой кучей каталогов, разницы малозаметно в этом.
2. Настройки удобнее в Atom ИМХО. Не сидишь в коде и не прописываешь нужное значение для темы и тому подобное (Sublime). При желании можно и ATOM даёт такую возможность, так же полностью переписать дизайн самостоятельно. 
3.Пакеты популярные в sublime text'e тоже присутствуют в ATOM.
4. Не надо самого начала paсkage control уставнавливать в начале.
5. Поддержка синтаксиса в ATOM храмает, даже с дополнительными пакетами.(но это наживное)
Какой удобней тем и пользуйтесь, рано или поздно к IDE придут большинство. Переход из Sublime text в ATOM или наоборот не составляет труда. Горячие клавиши одинаковые, миксины переписать.
P.S. Давно слышал что ATOM хотел синхронизацию ввести пакетов, чтобы заново не устанавливать на новом рабочем месте. Может уже присутствует и это большой плюс

Худший ответ:
Присоединяюсь к предыдущему оратору. Мало того что SublimeText обходит по скорости, так же на него куча разных плюшек, которые нереально помогают в работе. Такие как emmet и конечно же easymotion!=)
Рекомендую посмотреть на канале sorax обзор саблайма, в текстовый редактор влюбляешься с первого взгляда<3
Вопрос: Куда делись некоторые расширения для Google Chrome?

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

Худший ответ:
Потому что искать нужно так:
https://chrome.google.com/webstore/search-apps/json
или так: 
https://chrome.google.com/webstore/search-extensio...
А не так - https://chrome.google.com/webstore/search-extensio... =)
Вопрос: Насколько правилен такой подход?

Лучший ответ:
В любой момент он может загрузить картинку, а затем тут же её убрать. Следовательно она навсегда останется нигде неиспользуемая.
Можно и не загружать картинки на сервер при редактировании статьи, а показывать их, например, через Blob URLs. А при сохранении уже делать загрузку и заменять эти блоб-урлы на реальные адреса. Здесь можно посмотреть пример использования (кнопка "Import image with Blob URLs")

Худший ответ:
Можно хранить картинки в папках с id статьи. Пример пути к картинке при такой схеме хранения:files/images/{article_id}/{file_name}
Из плюсов:крайне простое удаление изображений - просто удаляем папку, имя которой совпадает с ID статьиможно хранить файлы с осмысленными именами, не боясь коллизийUPD. Прошу прощения, упустил первую часть вопроса.
Хранение дополнительных данных о файлах неизбежно, если нужно более продвинутое управление изображениями. Удалять конечно же лучше во время сохранения статьи.
Вопрос: На сколько node.js хорошо подходит к задачам computer vision?

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

Худший ответ:
Хех=) на производстве никто не будет ждать, пока ваш тугой скрипт будет гонять 4 ядерный сервер, чтоб распознать одну дохлую курицу на конвейере. 
Это весьма ресурсоемкая задача, и node здесь- это действительно бред, как и остальные веб технологии. 
По хорошему это надо взять ARM как Ваш raspberry и написать под него прошивку на C++. 
Одной быстродействующей камеры тут еще может быть и мало- чтоб определить размер надо смотреть в разных сторон- сверху и сбоку.
Вопрос: Как в PHP обработать все загруженные файлы?

Лучший ответ:
foreach($_FILES as $index => $file) {
  // Обработка $file
}

Худший ответ:
в скрипте сделайте
print_r($_FILES);die();
и всё увидете сами.
Вопрос: Несколько IP на одном интерфейсе, надо указать главный

Лучший ответ:
Сам спросил, сам отвечу: вопрос решился с помощью добавления src a.b.c.10 к default via ..., то есть в /etc/conf.d/net имею

config_eth0=«a.b.c.10/24 a.b.c.20/24 a.b.d.10/24 a.b.d.20/24»
routes_eth0=«default via a.b.d.1 src a.b.c.10»

Документация и гугл рулит.

Худший ответ:
а тогда почему routes_eth0=«default via a.b.d.1» а не routes_eth0=«default via a.b.с.10»?
Вопрос: Почему большинство программистов выбирают Mac?

Лучший ответ:
Не "программистов",  а "людей, которые за компьютером РАБОТАЮТ".
Примерно вот почему:

Худший ответ:
Например, https://github.com/thoughtbot/laptop
Не сложно же?
Вопрос: Как, без перезагрузки страницы, передать значение из JS в PHP?

Лучший ответ:
Бегом сюда :)

Худший ответ:
jQuery - метод ajax.
Вопрос: Как в C++ хранить объекты (либо указатели на них) в массиве (std::vector)?

Лучший ответ:
Например наследуя ваши классы от одного базового, и вектор соответственно для этого базового класса делаете. Тогда в него можно класть объект любого класса, унаследованного от базового.
В с# и java вообще все классы онаследованы от базового класса Object, поэтому в контейнер для Object можно объект любого класса положить. Есть ли такой стандартный базовый класс в плюсах сказать к сожалению не могу, не силен в с++. Но можно свой сделать.

Худший ответ:
А, ну и очевины вариант в стиле Сstd::vector<void*> containsAnyPtr;
containsAnyPtr.push_back( (void*)(new MyClassOne) );
containsAnyPtr.push_back( (void*)(new MyClassTwo) );
containsAnyPtr.push_back( (void*)(new NotMyClass) );
Только вопрос теперь в том, какой именно объект оттуда достанем. Пропадает строгая типизация, которая является фишкой С/С++.
P.S.
Можно немножко осиплюсплюсить:std::vector<void*> containsAnyPtr;
containsAnyPtr.push_back( reinterpret_cast<void*>(new MyClassOne) );
containsAnyPtr.push_back( reinterpret_cast<void*>(new MyClassTwo) );
containsAnyPtr.push_back( reinterpret_cast<void*>(new NotMyClass) );
Вопрос: Как получить rss ссылку на «Мои Подписки» в  Youtube ?

Лучший ответ:
Обсуждение
https://code.google.com/p/gdata-issues/issues/deta...
Есть большая вероятность, что об этом придется забыть, предлагают как альтернативу: https://bitbucket.org/4rch0n/youtube-subscription-rss
UP: 10/05/2014 22:41
Написал маленький пост с инструкцией как добавить канал в RSS может кому пригодится: magician-roman.livejournal.com/126763.html

Худший ответ:
Удваиваю вопрос.
Вопрос: С чего начать изучение основ работы мировой сети?

Лучший ответ:
А Вам, простите, насколько глубоко хочется разобраться? :)
Можете начать с изучения сетевой модели ISO/OSI

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

Лучший ответ:
Есть недорогие движки типа ДП 25, в дополнение можно просто купить цангу под свои нужды и вперед. Если есть желание контролировать скорость, то можно купить/спаять простейший ШИМ и ручной станок готов. Я купил в строительном магазине еще и станину, чтобы перекоса не было. Подробнее с фото расписано в статье.

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

Лучший ответ:
Нет идеала. 
каждый таск-менеджер заточен под определенный круг задач. 

redmine — для программистов. управление репозиториями, вложенные задачи, версии, проекты
мегаплан — для простых служащих, причем с функциями корпоративного портала.
и тому подобное. 

каждая группа людей хочет видеть свои функции, каждый продукт обрастает плагинами и расширениями. 
если невозможно расширить сам продукт, его расширяют за счет расширений браузера и т.п.

как создать такой, чтобы учитывал всё функции и потребности — никто не знает. 

если будет слишком много функций, в нем просто запутаются.

Если решать задачу глобально, то по идее нужен какой-нибудь конструктор таск-менеджеров на основе предпочтений пользователей. Например, набора модулей и взаимосвязей между ними. 

Если меня спросить, а какой идеальный, то для меня это redmine.
1. Он действительно клевый
2. Я его знаю достаточно хорошо
3. Мне легко расширять его функциональность за счет плагинов, которые достаточно просто писать. 

Как-то так.

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

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

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

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

Худший ответ:
Если то, что лежит в папке, присутствует в другом git-репозитории - есть git submodules. Иначе - только зранить в самом гите.
Вопрос: Почему браузер отображает исходный html код сайта?

Лучший ответ:
Проверьте Content-Type заголовок в ответе сервера.

Худший ответ:
Это явная проблема браузера ну или каким-то образом вы где-то отдаёте страницу с mimetype text/plain вместо text/html
Вопрос: Размеры langing страницы?

Лучший ответ:
"vh и vw" погуглите

Худший ответ:
Можно написать простую Js функцию которая будет вычислять высоту экрана и назначать ее определенному классу$(document).ready(function() {        
      $('.fullscreen').height($(window).height());    
      $(window).resize(function() {
        $('. fullscreen').height($(window).height());
      })
    });
далее задаете нужным блокам класс и их высота будет равна текущему размеру окна браузера<div class="fullscreen">
</div>
Вопрос: Как решить вопрос со звуком 5,1?

Лучший ответ:
Не все аудиоплееры умеют работать с конфигурацией 5.1. Нужно либо искать плеер умеющий работать с конфигурацией 5.1 либо прописывать в настройках реалтека всем гнездам режим front out, либо подключиться к системе по aux.

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

Лучший ответ:
Они для того, чтобы желаемая вами процедура была невозможной, специальным образом хэшируются.
Хэширование - процесс односторонний.
То есть краткий ответ на ваш вопрос - никак.
Длинный ответ - если некоторые пользователи использовали словарные либо достаточно простые пароли + у вас соль не была уникальна для каждого пароля - тогда есть шанс сгенерировать радужную таблицу и часть паролей подобрать таким образом. ПОДОБРАТЬ, какой на самом деле был пароль со 100% вероятностью узнать невозможно чисто из-за того, как работает алгоритм, можно подобрать пароль, который даст тот же хэш, но это не обязательно будет настоящий пароль.

Худший ответ:
Если в проекте был использован компонент Security, то внутри bcrypt и автоматическая хорошая генерация соли через надёжный источник энтропии. Так что:
1. Можно сразу исключить использование rainbow tables.
2. Перебор будет долгим. Даже по короткому словарю. bcrypt — штука ресурсоёмкая.
В общем, практически никак.
Если же Security использован не был, это может быть возможным.
Вопрос: Есть ли CMS с генерацией статики?

Лучший ответ:
Вспомнил, у MovableType имеется режим публикации в виде статичного html:
www.movabletype.org/documentation/administrator/publishing/static-and-dynamic-publishing.html

Худший ответ:
Предложу более надежный и подходящей для любой cms вариант.
С любого сайта (где отсутствует ajax) можно сделать дамп с помощью wget или соответствующего софта для вашей ОС.
Далее эту статику можно будет развернуть куда вам нужно.
Вопрос: Как выбрать правильное название для компании?

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

Худший ответ:
Не в респект — а какую технологию юзать etc.
Вопрос: Как написать регулярное выражение для разбора адреса(улица/дом)?

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

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

Лучший ответ:
При такой постановке вопроса - прямая дорога к квалифицированному специалисту, а не в интернет.

Худший ответ:
А что говорит журнал ошибок ОС на этот счет?
Вопрос: Где заработать портфолио?

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

Худший ответ:
Иногда заказчики сразу выкладывают полное тз макеты и тд. Вот возьмите и сделайте это задание без связи с заказчиком. Я свой первый заказ нашел за 2 дня с ценой 75% от той что сейчас беру спустя месяц)
Вопрос: Интересен ли плеер с интеллектуальным Shuffle для PC и в будущем Android?

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

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

Лучший ответ:
Самое большое сообщество электронщиков профессионалов в рунете - electronix.ru. Думаю ваш вопрос лучше задать там.

Худший ответ:
В итоге решено создать группу в вк для обмена учебными материалами
vk.com/embedded_space
Вопрос: Как эффективно преподавать язык программирования?

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

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

Лучший ответ:
Вопрос в корне не верен. СКВ выбирают не исходя из языка программирования. Есть несколько концепций работы СКВ. Что вам больше нравится, то и выбираете. Лично моя рекомендация - это GIT. 
1) Нет жёсткой привязки к центральному серверу.
2) Удобнее реализована работа в нескольких командах. (На уровне идеологии)
P.S. Я пользовался и Git, и SVN.

Худший ответ:
@UbuRus - Вы в итоге и ответили на мой вопрос. - Я, кстати сказать, тоже предпочитаю Git, но все определяют корпоративные стандарты, и мне было важно узнать фактическое состояние дел. Спасибо
Вопрос: В чём ошибка ActionListener?

Лучший ответ:
Проблема в том что static код который выполняется в методе public static void main не может получит доступ к не статичному внутреннему классу.  Либо сделайте класс public static class ButtonActionListener implements ActionListener, либо перенесите основной код в нестатичный метод

Худший ответ:
Как вариант можно сделать ButtonActionListener package-private классомpublic class OOP {
  public static void main(String[] args) {
    
    JFrame frame = new JFrame();
    frame.setSize(400, 500);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setLocationRelativeTo(null);
    frame.setLayout(new GridBagLayout());

    JTextField textf = new JTextField();
    JTextField textf2 = new JTextField();
    JButton Mybutton = new JButton("Start");
    
    frame.add(textf, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.9,
        GridBagConstraints.NORTH, GridBagConstraints.HORIZONTAL,
        new Insets(2, 2, 2, 2), 0, 0));

    frame.add(textf2, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.9,
        GridBagConstraints.NORTH, GridBagConstraints.HORIZONTAL,
        new Insets(2, 2, 2, 2), 0, 0));

    frame.add(Mybutton, new GridBagConstraints(1, 3, 1, 1, 0.0, 0.9,
        GridBagConstraints.NORTH, GridBagConstraints.HORIZONTAL,
        new Insets(1, 2, 2, 2), 0, 0));
    
    Mybutton.addActionListener(new ButtonActionListener()); // Ошибка

    frame.setVisible(true);
    frame.pack();   
  } 
}

class ButtonActionListener implements ActionListener{
    @Override
    public void actionPerformed(ActionEvent e) {
          JOptionPane.showMessageDialog(null, "Messege box");      
    }
}
Вопрос: Где найти препода по Python?

Лучший ответ:
 правдо x интересует в самую последнюю очередь
пляшите от задач, python — в 1ю очередь инструмент решения задач, а уже потом «шашечки»…
какие задачи вы собираетесь с помощью питона решать?

Худший ответ:
Вам именно частный препод нужен?
www.specialist.ru/dictionary/definition/python — неплохой обучающий центр, я там курс по СЕО проходил.
Вопрос: Как настроить cron для ruby скрипта?

Лучший ответ:
А гем Whenever вашу задачу не решит? Очень удобная, как по мне, вещь.

Худший ответ:
в вашем варианте идет интерпретатор и потом команда
а надо время, потом пользователь (если системный /etc/crontab) потом полный путь к интерпретатору и аргументом к нему полный путь к нужному скрипту.
еще проверить права доступа, чтобы скрипт мог выполняться.
и настройте mta, хоть nullmailer, чтобы логи работы системы отправлялись в почту.
man cron:
# m h dom mon dow user  command
0 23 * * * root /bin/bash /full/path/to/my/script.sh
Вопрос: Как происходит «соединение» языков при создании игры?

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

Худший ответ:
Во многие движки встроены проигрыватели флеша (специальные версии), и связаны с игровой логикой. Например, ScaleForm (gameware.autodesk.com/scaleform) который используется, в том числе, WoT и всеми другими играми Wargaming
Вопрос: Почему приложение Amazon Kindle под iOS7 постоянно перегружает экран после возвращения из другого приложения?

Лучший ответ:
Как правило, "перезагрузка" экранов происходит при нехватке памяти. Когда Вы переходите в тот же Abby Lingvo он запрашивает слишком много памяти, система просит потесниться AmazonKindle и он выгружает себя (либо какую-то часть себя). iPad mini слабенький в этом плане
Как вариант, попробуйте убить(всмысле выгрузить из памяти в панели где отображены все запущенные app) все лишние приложения , оставив только эти два. Ну или поставить другой словарь, который будет кушать меньше ресурсов. Возможно поможет... просто еще есть вариант, что так и было задумано разработчиками Amazon Kindle. Тогда этот совет мимо кассы
До кучи, вот вам лайфхак
http://ebookfriendly.com/translate-words-in-kindle-app/

Худший ответ:
Для быстрого перевода слов могу посоветовать классное приложение iEnRus. Запускаете это приложение, потом в любом другом просто выделяете слово и копируете его в буфер обмена. Тут же всплывает стандартное уведомление с переводом слова (может ещё и произносить). Никуда переключаться не надо. Единственное неудобство, из-за некоторых ограничений iOS, программу нужно перезапускать раз в 10 мин.
iOS 7 вообще прожорлива. У меня на iPad Air стоит из Safari переключиться на любое другое приложение и вернуться, как всё начинает запускатья заново. Больше двух приложений в памяти не держится. Но на iPhone 5 (c iOS 7) всё просто идеально работает. Не допилили они ещё для планшетов.
Вопрос: Почему MySQL выдает записи быстрее, чем подсчитывает?

Лучший ответ:
Первый запрос пробегает всю таблицу, чтобы посчитать count.
Второй - находит 25 строк, удовлетворяющих условию, и останавливается.
Если из первого запроса убрать LIMIT (который автоматически добавляет phpmyadmin), то время выполнения будет вполне нормальным.

Худший ответ:
Отображение строк 0 - 24
То есть фактически там limit 0, 25 и просматриваются не все строки. При count - все.
Вопрос: Какова разница между дистрибутивами линукс?

Лучший ответ:
Увы, линукс многогранен. И сказать чем отличается один дистрибутив от другого в основном сложно. Есть несколько способов уснановки/обновления/управления устанавливаемыми программами:
RPM-пакеты
DPK-пакеты
lz-както там пакеты
Сборка на подобии Gentoo.
Можно, конечно, каждую программу по отдельности собрать из изходником, но это муторно и неудобно.
У каждой реализации есть разные типы Х-сервера. Основные это КДЕ и Гном. Есть системы больше заточенные под десктопные решения (больше оптимизирована графика), другие под среверную составляющую - там оптимизированы и настроены больше службы.
Есть дитрибутивы на жескую привязку к железу с установкой на носитель, есть переносимые (реализации Live, и например Slax). 
Прежде чем решать, какой дистрибутив вам нужнен, определитесь для каких целей вам он нужен: как десктоп у меня Убунту, на сервере Убунту Сервер и ЦентОс. На старом переносном ноуте помимо ХР стоит и SLAX - размещается на том же диске с  NTFS. Ну и Интернет для того и существует, чтоб можно было спросить какой дистрибутив лучше ставить под определенные задачи.

Худший ответ:
да, но.. 
на мой взгляд, называть дистрибутив отдельным именем только из за того, что там используется другой набор программ - глупость.
это как оттюнинговать 9ку и назвать её Super Rally X500, просто потому, что там поменяли бампер, торпеду и руль.
выходит что тот же дебиан можно привести к виду Gentoo, если постараться? или допилить до Ubuntu сервер в масштабе 1к1?
Вопрос: UML и паттерны проектирования — это одно и то же?

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

Худший ответ:
UML - это язык. Паттерны - это шаблоны. UML используется для описания функциональных блоков программного продукта, их взаимодействия. Паттерны проектирования - это варианты этих самых блоков и их взаимодействия. UML используется в т.ч. для описания паттернов. Соответственно вы сначала выбираете паттерн, а на его основе описываете всю структуру средствами UML.