Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Где найти свежие туториалы разработки под Android?

Лучший ответ:
Никто не застрахован от ошибок. И гугл не исключение.
Что можете сделать вы:
1) Напишите об этом в баг трекер по Студии. Возможно это пофиксят.
2) Копните ещё глубже и сделайте правильно - для вас практика + опыт :)
3) Вы нигде не найдёте свежих туториалов вообще по всем темам. Заведите блог и пишите туториалы по нужным темам сами) Так сказать "От новичка - новичкам"

Худший ответ:
Например здесь https://foxminded.com.ua/android/ можно поработать в команде над реальным проектом, учеба+практика. Знание Java Core приветствуется. Если с нуля, то лучше сразу на курсы.
Вопрос: &quot;полуфреймворк&quot; для построения запросов и валидации?

Лучший ответ:
symfony 2 представляет собой набор таких кубиков. можете выдрать оттуда формы с валидацией и доктрину.

Худший ответ:
Очень хотел предложить ActiveRecord из Yii, но вы сильно против =) Предлагаю для запросов вот это redbeanphp.com/
Вопрос: С чего начать изучать язык программирования С?

Лучший ответ:
Керниган и Ричи Язык программирования Си.
Классика никогда не стареет.

Худший ответ:
С понимания структур, указателей. Тренироваться можно на Pelles C.
Вопрос: Какие самые лучшие в мире, продуктивные (видео, интерактив) курсы по обучению Photoshop и Illustrator?

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

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

Лучший ответ:
А зачем вы пытаете смешивать PDO и mysql_ функции?
И по какому принципу вы выставляете отступ у строк? Зачем они так странно и непредсказуемо прыгают?

Худший ответ:
Какое ООП, вы о чем? Повсюду mysql_* функции.
md5 выкиньте. password_hash
htmlspecialchars к чему? mysql_real_escape_string тоже в мусорку. PDO сам эскейпит когда подставляет переменную на место ?Edit:
mysql/mysqli ничего общего с PDO не имеют.
Вопрос: Как убрать карусель с некоторых страниц Joomla?

Лучший ответ:
Оставьте её только на главной странице, в чём проблема? Эта возможность является базовой функцией. Найдите слайдер в менеджере модулей, и в настройках модуля в разделе "привязка к пунктам меню" выберите нужное.

Худший ответ:
В дополнение к ответу @cyber-jet - если только карусель не интегрирована в шаблон, что тоже может быть. В таком случае надо править шаблон, вынести карусель в отдельный модуль и уже там привязать его только к главной странице.
Вопрос: Yii боевка игры?

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

Худший ответ:
как захочешь так и делай. для примера ganjawars.ru wekings.ru botva.ru
Вопрос: Как из содержимого iframe изменить стили самого iframe?

Лучший ответ:
Нельзя так сделать, нельзя поменять стиль iframe из самого iframe.

Худший ответ:
Как вариант использовать postMessage
https://developer.mozilla.org/en-US/docs/Web/API/W...
Вопрос: Какой наиболее простой вариант миграции десятка сайтов?

Лучший ответ:
Не пойму, при чём тут dns. 
Совсем без даунтайма не получится. 
1) делаем копию сайта на втором сервере
2) вырубаем сайт на обоих серверах (503 и вот это вот всё). 
3) включаем proxy_pass на старом сервере
4) актуализируем базу
5) врубаем сайт на новом сервере. 
Даунтайм будет == времени переноса базы.

Худший ответ:
Имеется VPS, 2 IP адреса, настроены собственные ns.
Нужно переехать на другую VPS, какой вариант более простой?
Сайты не должны перестать работать.
------------
всё логично: переноси сайты Домен+Файлы.....
Пока будет обновляться домен на новые NS записи
Ты не заметишь, как сайт со старого VPS обновится на новый VPS
Так сайт будет работать на старом, а как обновится врубится на новом...
Всегда так делал....!!!
Профит! Потом удали полностью сайт от куда переносишь (домен+файлы)....
Вопрос: Нужны ли кому то сайты написанные на Spring?

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

Худший ответ:
Вопрос в стоимости внедрения и последующей поддержки. Если стоимость сопоставима с остальными решениями (а лучше ниже), то можно заниматься.
Вопрос: Связать аккаунт Google и YouTube (для родного Android клиента)

Лучший ответ:
Попробуйте www.youtube.com/finish_link_upgrade

Худший ответ:
Спасибо, плюсанул! Похоже на правду.
Правда не помогло =) Сейчас захожу с телефона — все равно пишет, что не связано.
Мистика какая-то
Вопрос: Как построить дерево вызовов для JavaScript?

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

Худший ответ:
Как вариант есть специальная библиотека stacktrace.js.
Вопрос: Конфликт одинаковых функций. Как исправить?

Лучший ответ:
0) "получается ошибка" - плохое описание проблемы. Как минимум нужно писать текст ошибки и строчку.
1) Могу в режиме телепата предположить что приведенный Вами файл вызывается в цикле для каждой статьи.
Соответственно у вас получается 2е определение функции format_by_count.
Вообще лучше никогда не заниматься определением функции в условном блоке, а определять где то выше.
Локально проблему можно решить if (!function_exists("format_by_count")) {
  function format_by_count($count, $form1, $form2, $form3){
    $count = abs($count) % 100;
    $lcount = $count % 10;
    if ($count >= 11 && $count <= 19) return($form3);
    if ($lcount >= 2 && $lcount <= 4) return($form2);
    if ($lcount == 1) return($form1);
    return $form3;
  }
}но это все равно говнокод.
2) Писать html верстку и php логику в одном файле - дурной тон. Почитайте про mvc какой нибудь.

Худший ответ:
Удивительно, но ответ уже у Вас на экране - require_once - выносите функцию в отдельный файл и подключайте только один раз.
Вопрос: Как правильно подключить библиотеку в android проект. (Android Studio)?

Лучший ответ:
Вам не надоело на каждую мелкую сложность лепить вопрос?
Как вывести текст на CustomView в Android Studio?
Как выполнить команду при нажатии двух кнопок, одна из которых в состоянии setPressed, Android 4.2?
Как правильно подключить библиотеку в android проект. (Android Studio)?
Это основы основ, понимаете! Начните думать сами хоть немного...
На крайний случай гуглите дольше чем 2 минуты. Прежде чем создавать вопрос, погуглите его в течение 2 часов, прочитайте 10 статей и напишите 200 строк кода..а уж потом создавайте..

Худший ответ:
Приведите в порядок мысли для начала. Что и откуда вы хотите подключать. А потом почитайте вот этот раздел мануала.
gradle.org/docs/current/userguide/multi_project_bu...
Если много букв пугает то вот тут
tools.android.com/tech-docs/new-build-system/user-...
Вопрос: Какие книги\ресурсы почитать по самым основам финансовой грамотности?

Лучший ответ:
Вариант: Основы экономики (макро и микро), Технический анализ, Фундаментальный анализ.
  "...стыдно признаться...." А чего так? Я думаю стыдно должно быть тогда, когда занимаешься делом а сам в нем толком не разбираешься и еще советы даешь. А тут вполне нормально. (сугубо личное мнение!)

Худший ответ:
Карл Маркс "Капитал", хотя бы первый том.
И ради бога, не смотрите эти ***тые видео от сторонников всемирного заговора. Если говорят про печатный станок и евреев - сразу выключайте этот бред.
Вопрос: Переадресация всей почты на «главный» ящик?

Лучший ответ:
pdd.yandex.ru/domain/название_вашего_домена/ => Настроить домен => Адрес по умолчанию:
Адрес по умолчанию — это адрес ящика, куда будут приходить все письма на несуществующие в этом домене ящики.

Худший ответ:
В Яндекс почте для домена существуют Рассылки - создается email адрес и с него почта автоматически рассылается на один или несколько других email адресов.
Вопрос: Чем отличается верстальщик от front-end developer?

Лучший ответ:
Верстальщик преобразует графический макет (Photoshop или иной) в набор HTML + CSS + картинки. Иногда к свёрстанному макету может подключить типовые библиотеки Javascript, например, slider для картинок, или всплывающие подсказки (tooltip), или диалоговые окна (dialog/popup).
Знания и навыки:работа с графическими программами, чтобы понять, как собран макетзнание HTML, HTML5, CSS, CSS3, понятие про веб-шрифты, спрайты и другие технологиипригодятся знания по HTML-фреймворкам, например, Twitter Bootstrap или Semantic UIнавыки кроссбраузерной вёрстки, чтобы в разных браузерах выглядело и работало одинаковонавыки отзывчивой вёрстки, чтобы можно было использовать на устройствах с разными возможностями и разрешениямизнание типовых решений javascript, чтобы реализовать простейшие вещи, заложенные в макете
Фронтенд-разработчик делает так, чтобы макеты, полученные от верстальщика, были наполнены реальными данными. Если приложение построено как client-side (то есть вся основная логика загружается в виде огромного javascript в браузер, а данные запрашиваются с сервера по AJAX; это называется "толстый клиент"), то фронтенд-разработчику потребуется следующее:знание HTML, HTML5, CSS, CSS3, понятие про веб-шрифты, спрайты, Comet и другие технологииглубокое знание Javascript, включая использование готовых фреймворков, библиотек и написание расширений для них, что подразумевает объектно-ориентированное и событийное программированиезнание AJAX, CORS и навык создания тестовых затычек на стороне сервера, чтобы можно было разрабатывать приложение пока бакенд не готов
Если фронтенд  строится на стороне сервера, то дополнительно потребуется знать используемый серверный язык программирования (например, Python, Ruby или PHP) и используемый фреймворк (Django, Ruby-on-Rails, Yii). На практике бывало такое, что фронтендер просил в нужной части проекта сделать var_dump от структуры данных, которую надо показать и перечислить серверные методы, которые надо вызвать по нажатию предполагаемых кнопок.
Зачастую фронтенд-разработчик может и сам закодировать эти серверные методы, если не требуется углубляться в серверную логику (отношения в данных, конкретная бизнес-логика, хранение данных, кэширование, очереди, крон-задачи). Я лично таких очень ценю.
И моё личное мнение - фронтенд разработчику не помешают базовые знания про UML. Иногда с ними так тяжело обсуждать обмен данными по AJAX. У них это какой-то непрерывный поток магической энергии, волшебным образом преобразующийся в буковки на экране пользователя, а вот для бакенда это набор отдельных операций, иногда ещё и асинхронный. Диаграммы последовательностей ни читать, ни писать многие не умеют. Таймлайны составлять не умеют.
-----------
Написал дополнение: copist.ru/blog/2015/08/29/layout-designer-vs-front...

Худший ответ:
Верстальщик накидывает шаблон сайта (как сайт должен выглядеть), а фронт энд программист накидывает уже функционал, вроде так. Фронт энд разработчику нужно знать php, CGI, JS, CSS и желательно владеть каким либо фреймворком (YII допустим) и/или CMS (Joomla, drupal например)
Вопрос: Проблема с почтой mail.ru

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

Худший ответ:
Попробуйте еще включить безусловную пересылку всех писем на другой почтовый ящик вне @mail.ru — google, yandex, корпоративный…
Вопрос: Как найти наибольшую последовательность символов что повторяется в тексте более одного раза?

Лучший ответ:
Решение:
Класс LongestSubstringFinder, производящий эту операцию:import java.util.Arrays;

public final class LongestSubstringFinder {

    private LongestSubstringFinder() {}

    public static String findLongestSubstringAtString(String string) {

        string = string.replaceAll("\\s+", " ");

        int quantityOfSuffixes = string.length();
        String[] suffixes = new String[quantityOfSuffixes];

        for (int i = 0; i < quantityOfSuffixes; i++) {
            suffixes[i] = string.substring(i, quantityOfSuffixes);
        }

        Arrays.sort(suffixes);

        String longestRepeatedSubstring = "";
        for (int i = 0; i < quantityOfSuffixes - 1; i++) {
            String x = findLongestCommonPrefixOfTwoStrings(suffixes[i], suffixes[i + 1]);

            if (x.length() > longestRepeatedSubstring.length()) {
                longestRepeatedSubstring = x;
            }
        }
        return longestRepeatedSubstring;
    }

    private static String findLongestCommonPrefixOfTwoStrings(String first, String second) {
        int quantity = Math.min(first.length(), second.length());
        for (int i = 0; i < quantity; i++) {
            if (first.charAt(i) != second.charAt(i))
                return first.substring(0, i);
        }
        return first.substring(0, quantity);
    }
}
Тесты(пройдены):@Test
    public void testFindLongestSubstringAtStringFirst() throws Exception {
        String testString = "Сайт toster, бла бла бла Сайт toster";
        String neededResult = "Сайт toster";
        String longestSubstring = LongestSubstringFinder
                .findLongestSubstringAtString(testString);
        assertEquals(longestSubstring, neededResult);
    }

    @Test
    public void testFindLongestSubstringAtStringSecond() throws Exception {
        String testString = "aboibooolsabbooolsadf";
        String neededResult = "booolsa";
        String longestSubstring = LongestSubstringFinder
                .findLongestSubstringAtString(testString);
        assertEquals(longestSubstring, neededResult);
    }
Об алгоритме: здесь и здесь.

Худший ответ:
Идея:
Берем N последовательностей длины 1, начинающиеся в элементах 0..N-1, выписываем в массив позицию их 1го символа (0..N-1), сортируем по символу в этой позиции. Для групп с одинаковым символом вызываем рекурсивно, рассматривая 2й символ с позиции, записанной в массиве итд
Псевдокод:find(N,A[])
  p[N]={0..N-1} // позиции начала подстрок
  l=0,ml=0,s // длина, макс длина подстроки, позиция подстроки макс длины
  finda(0,N)

// искать среди позиций p[i..j-1]  
def finda(i,j)
  if l>ml && j-i>1
    ml=l
    s=p[i]
  ++l
  // оставим в p[i..j-1] позиции <= N-l
  m=j,k=j=i
  while k<m
    if p[k]<=N-l
      p[j++]=p[k]
    ++k
  sort p[i..j-1]):A[p[i]+l]
  k=m=i
  while ++k<j
    if(A[p[k]+l]!=A[p[k-1]+l]) // конец группы подстрок с равным символом на позиции l от начала
      finda(m,k)
      m=k
  finda(m,j) // последняя группа подстрок с равным символом на позиции l от начала
  --l
Вопрос: php-xdebug

Лучший ответ:
Подозреваю что он открывается при старте сессии, и закрывается в конце.

Худший ответ:
А куда конектиться если порт закрыт? Или сперва надо пароль сказать чтоб он открылся?
Вопрос: Две работы

Лучший ответ:
Днём работаю на основной работе, по ночам пишу свой большой проект. 

В своё время сделал «ошибку» — объяснил жене, что за свой большой проект могу получить неплохие деньги. Потом, когда захотел бросить его, жена со скалкой объяснила мне, что лучше этого не делать… Она хочет двухкомнатную квартиру. 
Так что теперь я пашу и на работе, и дома под присмотром жены.

Отсюда мораль: меньше рассказывайте женам о своей работе — крепче будете спать.

Худший ответ:
всё началось, когда еще заканчивал школу… 
устроился работать сначала оператором, потом уже администратором в интернет-кафе и параллельно учился. 
Потом поступил в универ, пол года был перерыв, но душа видать не выдержала покоя, вечно себе придумывал какие-то занятия и понял, что легче будет найти работу параллельно — устроился админом в небольшую контору. 
Курсе на третьем ввязялся в проект тестером, не уходя от учебы и работы. 
На четвертом курсе познакомился с женой))) (на тот момент не знал что так будет))) )и график был такой:
с 7-8 утра до 15:00 работа и подработки, с 16:00 до 19/21:00 учеба (в зависимости от кол-во пар на ДНЕВНОМ обучении и если не было пар по заочке (на втором курсе поступил параллельно на другой факультет в том же вузе), если заочка была, тогда пары начинались у меня с 12 и до упора), а после бегом в гости и до 22-23, потом домой.

… (много вариаций жизни трудоголика)…

Сейчас же основная работа днем + пару часов на дополнительной + онлайн, который в большей степени совмещаю с основной работой, раньше еще и по вечерам до упора… но месяца полтора назад получил «втык» от жены, пришлось хоть частично перерассмотреть по-возможности график. 
Пытаюсь ЖИТЬ, но пока не особо получается… в планах отказаться от вечерней работы, хотя деньги хорошие, а сейчас ХЗ что будет после НГ… 
охота перейти на чистый онлайн и где-то «числиться», чтобы стаж капал, как не крути пенсия не помешает))))
з.ы. вчера руководство поставило диагноз — маниакально-депрессивный синдром. (на работу прихожу за 40-60 минут, ухожу либо во время, либо на минут 30-40 позже и даже не спрашивайте что я делаю, уже сам не знаю)))) )
Вопрос: Как исключить папку из обработки gulp-imagemin?

Лучший ответ:
Какая версия используется?
Попробуйте еще такgulp.task('default', function () {
    return gulp.src(['./src/images/**/*', '!./src/images/sprites/**/*'])
        .pipe(imagemin())
        .pipe(gulp.dest('./dist/images'));
});
Так же рекомендую вместе с imagеmin использовать gulp-cache

Худший ответ:
Попробуйте посмотреть в сторону: gulp-ignore
Вопрос: Как организовывать вывод текста с помощью php?

Лучший ответ:
Я не знаю что ответить...

Худший ответ:
Всем спасибо за ответы! Решил вопрос с помощью nl2br();
В итоги получилось что-то такого вида:<article><?php echo nl2br($sText); ?></article>
Каюсь, надо было сначала в документацию лезть, а потом тут засорять пространство. Извините.
Вопрос: Со скольки лет (в среднем) можно преподавать программирование детям?

Лучший ответ:
Главное то заинтересовать, а не преподавать.

Худший ответ:
С 14 думаю
Вопрос: Выполнение тестового задания?

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

Худший ответ:
А вы случайно не в Перми проходили собеседование? Просто тоже натыкался где то года 2 назад на такое.
Вопрос: Падает ли производительность MacBook после переустановки OS X?

Лучший ответ:
Промедление может быть только при установке на старинный Mac какой-нибудь новейшей версии OS
У меня air 12 года, но и Yosemite, и El Capitan встали и летают без проблем, будто изначально так задумывалось, хотя ведь так и задумывалось)

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

Лучший ответ:
Вы не прошли

Худший ответ:
"Тест" и "умственные способности" — такие же совместимые понятия, как мухи и балет.
Вопрос: Алгоритм поиска оптимального прохождения игрового уровня. Какой использовать?

Лучший ответ:
Вообще "де-факто" алгоритмом для нахождения коротких путей является A* (a star).
В вашем случае есть ещё задача о рюкзаке, в которой порядок слаживания предметов определён маршрутом. Если нет потребности куда-то дойти, то проще всего использовать алгоритм "волны" проверяя при этом количество очков и "энергии".
В любом случае задача сводится к контролируемому поиску в ширину.

Худший ответ:
Я нашёл подходящий алгоритм для решения этой задачи: задача о ранце (knapsack problem)
Вопрос: Прошу конструктивной критики на мой код на PHP

Лучший ответ:
Помню несколько лет назад ко мне тоже обратился, назовем его Геннадий, который «набирал крутых фрилансеров в новую крутую студию» и, видимо чтобы я доказал свою «крутость», выслал задание (больше похожее на реальное ТЗ), по которому надо было реализовать полноценный справочник по недвижимости со всем функционалом, в письме приложив ссылку на полугигабайнтый дамп не то CSV, не то SQL базы. Притом я должен был написать его сразу и за 12 часов, каждые 3 часа отчитываясь ему лично о проделанной работе.

Когда Геннадий получил отказ, он очень сильно обиделся, обозвав меня всякими словами, типа «некомпетентный», «ленивый», «упускающий свой шанс» и.т.д. на чем мы и распрощались.

Просто забейте и больше никогда не ведитесь на «тестовые задания» больше, чем в 100 строк, а тем более включающие в себя разработку готового продукта. Через пару лет будете вот так же рассказывать потомкам :)

Хотите проверить мой скилл как программиста? 100-200 строк хорошего задания вполне хватит для этого.
Хотите просто посмотреть на качество моего кода и умения как проектировщика больших систем? Добро пожаловать на мой github, где есть пара моих проектов, либо попросите «набросать на бумажке» что-то еще.

Почему-то на любом собеседовании в любую крупную компанию спрашивают либо накидать простейшую реализацию, либо дают на дом написать небольшой кусочек, а всем этим проходимцам-Геннадиям так сразу подавай «Интернет-магазин» или «Справочник недвижимости» с полным функционалом.

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

Лучший ответ:
Сервисы гуглятся по запросу «reverse ip lookup»

Самый крутой, но платный — www.domaintools.com, с собственным апи и тд

Из более менее порядочных, бесплатных — yougetsignal.com, но намного хуже чем у вышеописанного

Худший ответ:
Года 3 назад можно было хитрым запросом спросить у Yahoo. Был и cli. Гугл тоже может рассказать, но к сожалению не так точно. Вернусь из перерыва и посмотрю работают ли ещё мои скрипты для этого дела.
Вопрос: Что сможет сделать хакер, если украдет SSL сертификат сайта?

Лучший ответ:
Сможет дешифровать трафик между вами и клиентами, если он, конечно сможет его перехватить.
А че вы ждете? Выпишите у вашего провайдера новый SSL и дело с концом. Поменять дело 10 минут
Этож бесплатно пока оплачен.
Если сервер взломан, и угнаны сертификаты, нафига ему дешифровать трафик чтобы взломать сервер?

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

Лучший ответ:
Только не пушит, а переходит в нужный каталог и делает оттуда pull.
Например так:branch=$(git rev-parse --symbolic --abbrev-ref $1)
if [ $(git rev-parse --is-bare-repository) = true ]
then
    rep=$(basename "$PWD"|sed 's/.git//')
else
    rep=$(basename $(readlink -nf "$PWD"/..|sed 's/.git//'))
fi

/home/scripts/git/post-update.sh $rep $branch
И в post-update.sh например так:#!/bin/sh
DATADIR=/var/www/$1/$2
REPO=$1
BRANCH=$2

if [ ! -d $DATADIR ]
then
    mkdir -p $DATADIR
    git clone gituser@example.com:$REPO $DATADIR
    cd $DATADIR
    git checkout $BRANCH
else
    cd $DATADIR
    /usr/bin/git config user.email "deploy@local"
    /usr/bin/git config user.name "Deploy Robot"
    /usr/bin/git fetch origin
    /usr/bin/git reset --hard origin/$BRANCH
    /usr/bin/git stash
    /usr/bin/git checkout
    /usr/bin/git pull    
fi
Ну, можно еще сверху навернуть создание виртуалхостов в апаче, или удаление удаляемых веток.

Худший ответ:
Проще всего это сделать через веб-запрос.
Напишите хуки, которые будут дергать url по заданному адресу, в самом сайте сделайте обработку этого запроса, чтобы делал git pull.
У вас ситуация, конечно, попроще - репозиторий и деплой на одной машине, но этот способ наиболее универсальный.
Да и на будущее пригодится, если будете делать автодеплой с битбакета, например. Там вам вручную хуки писать не дадут, зато у них есть готовый хук c http-запросом.
Вопрос: Какие компоненты выбрать для устройства?

Лучший ответ:
Если взять чип ESP8266, то думаю можно уложиться. Не плату ESP8266, а сам чип, у нег о размер 10*11 мм. Сами сенсоры - гироскоп и акселерометр в основном мелкие. Можно еще температуру и влажнось навесить :).  
ESP8266 внутри уже имеет полноценный МК с реализованым стеком Wi-Fi. В сети полно примеров реализации на нем полноценнной работы без внешнего МК.
А в качестве аккумулятора взять миниатюрный li-on под размер. Собственно от его размера и стоит отталкиваться. Плюс разъем microusb и зарядник для li-on, например MCP73831T.
А для чего такой девайс, если не секрет?

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