pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Почему видеосистема компьютера включается с большим запозданием?

Лучший ответ: Монитор сдох.

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

Лучший ответ: Drupal + Ubercart
Есть типы материалов «Product» и «Box set». Каждый продукт может обладать своими опциями и наворотами (атрибутами товара). Каждый Box Set может состоять из любых продуктов. При покупке Box Set'a можно выбирать атрибуты для каждого товара.

Худший ответ: Joomla + VIRTUEMART + допилить планиг для нужного функционала. 
Не видел подобнгого функционала.
Вопрос: Что случилось с Хабром?

Лучший ответ: яндекс не выдержал хабраэффект

Худший ответ: Да, был недоступен около 30 мин. Кстати Яндекс тоже лежал. Почему не знаю.
Вопрос: Создание FullAjax сайта?

Лучший ответ: Angular.js, Ember.js, Knockout.js, Backbone,js и т.д.

Худший ответ: Простой деревянный вариант 
https://github.com/devote/HTML5-History-API
Вопрос: Монетизация игры HTML5 (web-browser и/или mobile native-wrapper) и анти-читинг. Реально?

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

Худший ответ: 1. Основные принципы монетизации. 
Зависит много от чего, в том числе и вашей идеологии. Вам главное монетизация или искусство ? Чем гибче вы хотите вписать монетизацию, тем больше вложений в геймдизайн это потребует. Но так как вы рассчитываете на быстрый запуск, то стоит выбрать что-то простое для старта, потом смотреть статистику и возможно менять. Как написали выше, в free2play играх основные продажи - это преимущества (pay2win), энергия, и контент. Во всех этих вариантах свои тонкости, не ждите, что с первой игры все сойдется. 
Учтите, что в среднем игроки по миру уже "наелись" free2play, идет снижение продаж и поиск новых моделей. 
Рекламные сетки и отсутствие рекламы - другой вариант. Это уже не сочетается с внутриигровой монетизацией, и нужен хороший трафик.
Также вы можете продавать лицензии, размещаться на площадках паблишеров, где они сами откручивают рекламу и делятся с разработчиками. 
2. Читерство в html5. Защищаться крайне сложно, может выйти намного дороже, чем саму игру разрабатывать), так что если ваша механика/монетизация сильно пострадают, то надо перестраивать монетизацию. Читеров можете чистить по статиcтике, либо синхронизировать с сервером в процессе действия, и уменьшить воздействие. Но если у вас например битвы между игроками, и какие-то критичные клиентские действия, и платное оружие - то это проблема, вам нужна реалтайм защита. Иначе просто будут жалобы и недовольство.
Не совсем понятно, при чем тут врапперы. 
Поделюсь опытом больше, напишите здесь вопрос elizavetta.net/question
Если нужны контакты для паблишинга, тоже пишите.
Вопрос: Как под Android использовать Яндекс.Карты бесплатно? (На МТС или Мегафоне)

Лучший ответ: Поснифферив траффик брендированных и небрендированных яндекс карт было установлено что первые ломятся на mobile.maps.yandex.net, а вторые на mobile-partners.maps.yandex.net
Соответственно используя мощь линукса в Android есть два варианта как заставить яндекс.карты быть бесплатными:
через iptables:
iptables -t nat -A OUTPUT -m tcp -p tcp --dport 80 -d 93.158.134.138 -j DNAT --to-destination 93.158.134.156
iptables -t nat -A OUTPUT -m tcp -p tcp --dport 80 -d 213.180.204.138 -j DNAT --to-destination 213.180.204.156
iptables -t nat -A OUTPUT -m tcp -p tcp --dport 80 -d 87.250.250.138 -j DNAT --to-destination 213.180.204.156

через /etc/hosts:
93.158.134.156 mobile.maps.yandex.net
213.180.204.156 mobile.maps.yandex.net


P.S. и да конечно у вас должны быть root права на ваш телефон — он же ваш телефон и вы его хозяин.

Худший ответ: Карты из маркета теперь не учитывают трафик на МТС и МегаФоне.
Вопрос: Как в python 3.4 вернуть несколько значений из сопрограммы (корутины)?

Лучший ответ: Ответ подсказали в другом месте. В общем, можно использовать для таких целей очередь:import random
import asyncio

@asyncio.coroutine
def coro(que: asyncio.Queue):
    res = 0

    t = random.random() * 3
    yield from que.put('start 1')
    yield from asyncio.sleep(t)
    yield from que.put('value 1 = {}'.format(t))
    res += t

    t = random.random() * 3
    yield from que.put('start 2')
    yield from asyncio.sleep(t)
    yield from que.put('value 2 = {}'.format(t))
    res += t

    t = random.random() * 3
    yield from que.put('start 3')
    yield from asyncio.sleep(t)
    yield from que.put('value 3 = {}'.format(t))
    res += t

    yield from que.put(None)
    return res

@asyncio.coroutine
def run(que: asyncio.Queue):
    while True:
        res = yield from que.get()
        if res is None:
            break
        print(res)

q = asyncio.Queue()
asyncio.async(run(q))
asyncio.async(coro(q))
asyncio.get_event_loop().run_forever()

Худший ответ: Стоит добавить (мало ли кто еще сюда зайдет), что в Python 3.6 появились асинхронные генераторы и теперь асинхронные функции могут использовать выражение yield
Вопрос: C чего начать изучать Swift?

Лучший ответ: Если вы хотите начать программировать именно на Swift - то карты вам в руки ) Ничто не мешает начать именно с него, как с первого вашего языка для iOS. На iTunеs U есть хороший курс на русском языке, который читает Сергей Пронин. Я его сам смотрел, мне очень понравилось, что очень мало воды - все четко и ясно. Второй позитивный момент это то, что в для Swift в Xcode не надо создавать проект,  вы открываете Playground и начинаете кодить прям сразу, чтобы изучить язык и его конструкции. 
Для начала этих двух ссылок вам должно хватить 
Это перевод официальной книги по Swift - swiftbook.ru/doc
Это тот самый курс - https://itunes.apple.com/ru/course/razrabotka-ios-...
Теперь о плохом :) Swift очень молодой язык и постоянно меняющийся, вам как новичку может быть не понятно, почему синтаксис так быстро и сильно меняется от версии 1 до 1.2 и затем до 2.0. Второй момент, скажу вам как человек, который уже полгода пишет большой проект на Swift - это порой сложно даже для меня: довольно медленная компиляция, плохое описание ошибок, различные сложности работы с 3rd party объектами И так далее итп. Не даром все ведущие разработчики сегодня пока еще открещиваются от перевода своих проектов в продакшене на Swift. Но если у вас есть уже какая-то своя задумка несложного первого приложения, то я думаю - стоит начать )

Худший ответ: Начинайте со Swift, затем изучайте Objective-C. Хорошая статья для старта в Objective-C на Хабре. Но для уже программирующих...
Книги и справочник по Swift: "Swift. Разработка приложений в среде Xcode для iPh...", "Язык Swift. Самоучитель", "Swift. Карманный справочник".
Вопрос: Как сменить «владельца» (первого пользователя) на Андроид 4.2?

Лучший ответ: В 4.2 есть штатные средства для бекапа, и даже в фоновом режиме на аккаунт гугл. Если включено для второго аккаунта (там выбераешь аккаунт), и приложения ставились из под него, то все просто — сбрасывайте на заводские, и прописывайте второй аккаунт основным, все востановиться.
Ну, и если есть root, то проще всего, программами типа TutaniumBackup, как подсказали выше.

Худший ответ: Оставьте как есть, если надо сохранить данные. Насколько я знаю, сменить не получится. Сделать бэкап титаниумом, но там помоему нужен рут. Только хард-ресет. Конечно, могу ошибиться.
Вопрос: Подскажите тихий кулер(+радиатор) для AMD Athlon II X3 440 3.0GHz ?

Лучший ответ: радиатор побольше, вентилятор побольше, обороты поменьше.

Худший ответ: www.ixbt.com/cpu/premium5-coolers-shootout-may2k9-part1.shtml
Из этого списка пользуюсь Mugen 2, уровень его шума полностью устраивает.
Вопрос: Как подгружать формы через ajax в YII2?

Лучший ответ: Гуглите yii2 pjax submit. Вот например одно из первых nix-tips.ru/yii2-primeryaem-pjax-na-activeform-i-g...

Худший ответ: Проще юзать jquery для этого. Одну форму скрыли, другую показали.
Вопрос: Первый слайдер на JavaScript. Как улучшить код?

Лучший ответ: самое главное ты уже сделал, написал на pure JS

Худший ответ: Сделайте так, чтобы в html был лишь один ul#slider с набором li, который после использования в любой момент new Slider(element, options), где element, например, document.querySelector("#slider"), а options - объект с настройками: {speed: 500, animated: true...}, преобразовался в полноценный, готовый виджет со всей структурой. Сам вызов new Slider должен возвращать объект с набором функций, которые позволяют управлять слайдером программно (slideTo, slidePrev, slideNext, currentItem и т.д.). И чтобы было побольше опций, в первую очередь круговая прокрутка. Этих задач хватит надолго, а потом уже можно и оптимизировать, ибо будет что.
Вопрос: Трансляция звука с компьютера на компьютер

Лучший ответ: банальный вариант — зайти по mstsc, оно со звуком ;)

Худший ответ: Провод jack-jack, на одном втыкаем в выход для колонок, на другом в line in.
Вопрос: Как называется человек, который находит клиентов?

Лучший ответ: Менеджер. Но зависит от сферы деятельности - сутенер, например.

Худший ответ: Новый термин который сейчас используют - агент. Да впариватель продает то не знаю что) это целая отрасль, наука)
Вопрос: На что сделать уклон?

Лучший ответ: Упор лучше делать на создание быстрых web-приложений (single page application: JS,AJAX,Angular и т.д.), взаимодействующих с сервером через REST-API.
Затем выучить PhoneGap и сразу делать "пакет услуг": сайт + мобильные приложения этого сайта.

Худший ответ: Если вам лет 20 то смело можно изучать обе области.
Если вам за 30 то остановитесь на JS
Вопрос: Как создать образ виртуалной машины из физической инсталляции (Linux Mint 11)?

Лучший ответ: Vmware Converter как раз для вас.

Худший ответ: Смотря под каким гипервизором будет ВМ… 
Самый универсальный способ — это снять образ диска и развернуть его на виртуальной машине… но это долгий путь…
Под разные гипервизоры есть разные способы это сделать!
Вопрос: Как запретить отправку формы такого типа?

Лучший ответ: Просто прочитайте документацию к плагину$("form").submit(function() {
  var that = this;
//    $(this).validate() // возможно и валидацию понадобиться вызвать, смотря как у вас там все работает..
    if ( !$(this).valid() ) return false; // проверьте, правильно ли заполнена форма

    $.ajax({
      type: "POST",
      url: "mail.php",
      data: $(this).serialize()
    }).done(function() {
      alert("Спасибо за заявку!");
    });
        setTimeout(function() {
            $.fancybox.close();
            $(that).trigger("reset");
        }, 1000);
    return false;
  });

Худший ответ: $("form").submit(function(event) { // <- вставьте сюда event object
    // problem это какое-то не выполнившееся условие, например не заполненное поле в форме

    if (problem) {
        event.preventDefault(); // <- предотвращаем сабмит
    } else {
        // все нормально, делаем запрос
    }
});
Вопрос: Обработка Fatal error в PHP?

Лучший ответ: Здесь возможно 2 варианта , первый find возвращает null или false, а второй пытается вызвать у него метод, либо simple равен null или false. 
решение 1if(!$simple){
     //выход или throw new \Exception();
}
if(!($properties = $simple->find('.b-properties',0))){
     //выход или throw new \Exception();
}
if(!($tr = $properties->find('tr'))){
     //выход или throw new \Exception();
}
//Действия если ошибок нет и есть блок с ид=b-properties
Но рассово верно должно быть не проверка на null или false ,а на instanceof ожидаемого объекта/*
    сначала выполнится instanceof , потом отрицание "!" перед переменной ,
    так как у instanceof выше приоритет чем у отрицания
*/
try{
    if(!$simple instanceof Название_объекта){ 
         //выход или throw new \Exception();
    }
    $properties = $simple->find('.b-properties',0);
    if(!properties instanceof Название_объекта){
         //выход или throw new \Exception();
    }
    $tr = $properties->find('tr');
    if(!$tr instanceof Название_объекта){
         //выход или throw new \Exception();
    }
    //Действия если ошибок нет и есть блок с ид=b-properties
}catch(\Exception $e){
    echo $e->getMessage();
}

Худший ответ: Просто поставьте ifif($description = $simple->find('.b-properties',0)->find('tr'))
{
Действия если ошибок нет и есть блок с ид=b-properties
.....
}
Вопрос: Какую книгу по С++ выбрать?

Лучший ответ: Герберт Шилдт — C++ базовый курс
Стенли Липпман, Жози Лажойе, Барбара Э. Му — Язык программирования C++. Вводный курс (C++ Primer)
Роберт Лафоре — Объектно-ориентированное программирование в С++
Прата многие ругают

Худший ответ: 1. Учиться использовать google. Этот вопрос на этом сайте уже так много раз задавали, что даже удивляешься терпению участников тостера
2. По сути вопроса: Посмотрите по моим ответам, т.е. заглянуть в профиль. Я уже не раз на этот вопрос отвечал.
Вопрос: Внешний SSD vs HDD?

Лучший ответ: Windows XP, USB 2.0  — зачем ssd? только для того чтоб можно было уронить?

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

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

Худший ответ: В этом конкретном случае однозначно 2 вариант. Профит на данный момент от 1 будет минимальный, а где-то и отрицательно, краулинг на host к примеру. И главное, дальнейшая возможность расширения в регионы – идите в поддомены
Вопрос: Как поставить bitrix + virtualbox + windows10 64bit?

Лучший ответ: А у вас ось убежала... В смысле вам VB пишет что нужно x64 систему, а стоит у вас, наверное, 32 битная. (или в биосе виртуализация не включена)

Худший ответ: когда машину создаете выбирайте x64
Вопрос: Где найти простые задачки для изучения java?

Лучший ответ: Вот  тут в каждой главе по 10-20 задач разной сложности. Книга доступна совершенно бесплатно.

Худший ответ: У Эккеля в Философии Java есть к каждой главе примеры, которые можно набирать в редакторе и выполнять или просто запускать в голове.
Вопрос: Написание чата с чего начать?

Лучший ответ: посмотри на tornado + socks.js

Худший ответ: Новичку порекомендовал бы НЕ использовать асинхронных фреймворков, очередей сообщения, вебсокетов.
Начните с самого простого: Flask + PostgreSQL / MySQL.
Вопрос: Как в Haskell использовать сопоставление с образцом в охранных выражениях (в конкретном примере)?

Лучший ответ: Сопоставление с образцом можно использовать, но в guard'ах надо явно указывать, что сопоставляем, т.е. в данном случае аргумент - listfoo :: Eq a ⇒ [a] → Bool
foo list
	| [] ← list = True
	| [x] ← list = True
	| head list ≡ last list = foo . tail . init $ list
	| otherwise = False
Хотя лично я предпочитаю исходный вариант.

Худший ответ: В первом примере вы определили функцию и сопоставляете аргумент с образцом.
Во втором случае вы определили функцию с аргументом list и почему то думаете, что 
[x] компилятор воспримет как аргумент, ничего подобного. В гард-выражениях следует писать уже определенные идентификаторы
Вопрос: Хорошо ли использовать «//» вместо http/https?

Лучший ответ: Да, это хорошо, это древняя фича, браузер выбирает протокол такой же как у странице с которой переходят по ссылке.

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

Лучший ответ: Кто бы создал такие же уроки по юридической грамотности? :)

Ролики с уроками принадлежат вашему отцу. Без соответствующего договора их использование, тем более для извлечения прибыли, незаконно.

К адвокату по авторскому праву и затем с ним в суд.

Элементарно добиваетесь:
 — удаления ваших роликов с сайта
 — компенсации в размере незаконно полученной прибыли
 — компенсации морального вреда
 — компенсации судебных издержек
 — в зависимости от размера ущерба — вплоть до срока, правда скорее всего условного

Худший ответ: Ещё можно пожаловаться в те места, через которые он получает оплату, или продаёт рекламу.
Вопрос: Запись голоса на дому. Оборудование и ПО?

Лучший ответ: Убирать шумы лучше не ПО, а нормальной звуковухой.
Ззвуковая в ноутбуке или встроенная на мат.плату практически всегда дает шумы от наводок. В данном случае лучше либо нормальную звуковую карточку, либо попробовать дешевый вариант — внешнюю USB звуковуху (но 
это я не пробовал).

Худший ответ: Из программ как-то все обошли Adobe Audition. Достаточно неплохой звуковой комбайн, который и шумы удаляет и звук обрабатывает.
Вопрос: Как использовать токены для аутентификации в API?

Лучший ответ: Как сделал я. 
От классических сессий при работе через API отказался.
1. Для авторизации пользователь вводит логинпароль, устройство отправляет их по https на account/auth
2. account/auth выдает token (token_id:token_val) и secret
3. все дальнейшие запросы устройство отправляет по http указывая token и подписывая запросы с помощью secret
Как работает. 
Сервер получает запрос, видит что пришел token, разбивает его через двоеточие на input_id и input_val. Выбирает из базы токен с пришедшим input_id, получает из базы значение token_val и secret. Сравнивает input_val и token_val. Если в базе нашелся токен с нужным id и значения val равны, пришло время проверить достоверность запроса. 
Клиент помимо токена передал sign (подпись), которую сформировал так (например) secret+api_path+query_param. На стороне сервера вам известно api_path и api_param, а secret выбрали из базы. Хешировать подпись принято через hmac().
Помимо токена и подписи можно передавать time и так же класть его в sign, и на стороне сервера отсекать запросы запросы которым больше 60 сек. 
Таким образом. 
Если кто то слушает ваш канал, он не сможет подделывать запросы (а значит компроментировать), и из-за проверки времени жизни запроса не сможет вечно получать данные по однажды перехваченного запроса.
А в базе токены можете хранить пока клиент сам не запросит их уничтожения и сохранить время последного обращения через токен, и удалять токены которые не использовались более 60 дн.

Худший ответ: Гляньте вот сюда https://github.com/firebase/php-jwt и сюда www.sitepoint.com/php-authorization-jwt-json-web-t...
Вопрос: Какой FTP-сервер (из бесплатных; например, open source) проще и безопаснее установить на Windows XP?

Лучший ответ: FileZilla FTP Server.

Правда пользовал его лет 5 назад, думаю сейчас развился.

Весьма просто и удобно WYSIWYG'но настраивается (разделяемые папки, права доступа).

Худший ответ: FTP Менеджер?

На мой вкус WinSCP  — очень удобен.

WinSCP — это графический клиент SFTP для Windows с открытым исходным кодом.
Вопрос: Как отделить каждый 4-ый элемент массива?

Лучший ответ: Очевидно-школьное решение.<?php 
for ($times=0; $times<4; $times++)
{ 
  for ($element=$times+1; $element<20; $element+=4)
  {
    echo " $element ";    
  } 
  echo "<br>";
}  
?>
Выводит текст:1 5 9 13 17 
2 6 10 14 18 
3 7 11 15 19 
4 8 12 16

Худший ответ: array_chunk разобьет массив на части, все остальное уже зависит от способа вывода значений.$array = array();
for($i = 1; $i <= 20; $i++) {
	$array[] = sprintf('%02d', $i);
}

$n = 4;
$chunks = array_chunk($array, $n);

$chunks_r = array();
foreach ($chunks as $i=>$chunk) {
	foreach ($chunk as $j=>$el) {
		$chunks_r[$j][$i] = $el;
	}
}

header('Content-Type: text/plain'); 

foreach ($chunks_r as $chunk) {
	foreach ($chunk as $el) {
		echo $el, ' ';
	}
	echo PHP_EOL;
}
Вопрос: На чём делать бекап с удалённого сервера

Лучший ответ: Если можете подключаться к mysql удаленно, то пойдет тот же mysqldump.
Но проще делать дамп локально, а потом уже тянуть, тем же rsync

Худший ответ: automysqlbackup
Пока нареканий нет. Мануал
Вопрос: Есть ли IDE способная создавать консольные приложения Win32 из по Linux(кроме Visual Studio и Eclipse)?

Лучший ответ: Code::Blocks, QtCreator
В обеих возможно настроить кросс-компиляцию посредством, например, mingw.

Худший ответ: Стоит задуматься зачем тебе Linux вообще нужен или стоит ли перейти на другой язык, к примеру, Java, который гарантирует кросс-платформенность?
Вопрос: Как понять решение задачи на JS?

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

Худший ответ: Для всех стрелков вызов будет выдавать 10, потому что в момент вызова(а не создания) функция будет ссылаться на i = 10(на последнюю итерацию). Для того, чтобы сохранить значение переменной, нужно сделать сохранение ее в локальную. Например так:function makeArmy() {

  var shooters = [];

  for (var i = 0; i < 10; i++) {
    var shooter = (function() { // функция-стрелок
		var j = i; //сохраняем значение в локальную переменную
		return function() {          
			alert( j ); // выводит свой номер
		}
    })();
    shooters.push(shooter);
  }

  return shooters;
}

var army = makeArmy();
Вот здесь habrahabr.ru/post/38642 описана полностью твоя проблема и ее решение.
Вопрос: Как остановить Task?

Лучший ответ: Оформление кода сделай нормальным для начала

Худший ответ: Да, желательно сделать код читаемым, а то к решению твоего вопроса никто не приступит.
Вопрос: Где в Московской области аренда недорогая для фрилансера?

Лучший ответ: Вы знаете, это очень у вас оптимистичный настрой. 1-2 часа езды до ближайшего метро в будни это как раз минут 15-20 езды ночью по свободным шоссе. Реутов, например. И квартиры там по ценам что-то на уровне Москвы, может чуть подешевле.
Что значит «хорошие места»? Хорошие места, чтобы жить нравилось и от Москвы осталось хорошее впечатление — это в пределах Садового, не дальше :) Там и дворики тихие, и зелени побольше, и мест приятных хоть отбавляй.
А вообще, есть такой феномен, очень распространенный. Это когда лень приезжего и нежелание ездить час на электричках а потом еще час на метро, чтоб доехать до центра (вполне понятно их нежелание), мешает ему собственно находиться в самой Москве. В итоге так и получается, что живет он в подмосковье. А в Москву только по субботам, не чаще. И че, спрашивается, менял шило на мыло?
Но если вам повезло и вы страстно нежелаете сидеть на месте, то все-же оптимальнее будет снять комнату в Москве. Чтоб дома не хотелось сидеть, и жизнь кипела :)

Худший ответ: В принципе полностью согласен с evnuh)
Но можете посмотреть в сторону Зеленограда — новая часть зеленая и достаточно приятная. Прожил там пол года. Однокомнатную квартиру можно за 17-20 тысяч найти. Опять же Зеленоград — отчасти кремниевая долина в России) Без пробок 40 минут на автобусе до м.Тушинская.
Мне еще нравится таунхаусы в районе Юбилейного(Зеленоград), но там цены неприличные(