Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Изменение прав доступа у определенной группы в Linux?

Лучший ответ:
u - user
g - group
o - others ( остальные )
права:
r - read( чтение )
w - write( запись )
x - execution ( выполнение )
g+x - дать права группе на выполнение
g-x - забрать права у группы на выполнение
у каждого файла есть uid( user id ) и gid(group id)
поменять владельца: chown имя_юзера файл
поменять группу: chgrp имя_группы файл
Дать право на изменение файла определенному пользователю
если юзеру не принадлежит этот файл, тогда нужно читать про acl
или можно добавить юзера в группу, которой принадлежит файл и у группы есть права

Худший ответ:
Подскажите, а как прописать права так, чтобы они сохранялись для новых файлов в папке? У меня есть папка с почтой /var/mail/Maildir c подпапками new, cur, tmp. У всех этих папок даны права 775, но когда новые файлы туда попадают, они все только с правами чтения\записи пользователя-владельца и приходится вручную писать chmod 775, чтобы группа тоже получила доступ.
Вопрос: Как можно прикрепить файлы в input type=file?

Лучший ответ:
Никак.
Вы можете обнулить input type=file, можете читать из него уже выбранные пльзователем файлы, но не можете ничего добавить.
Для отправки на сервер можно применить FormData, с последующей пересылкой используя AJAX.
https://developer.mozilla.org/ru/docs/Web/API/Form...

Худший ответ:
Прежде, чем использовать данное поле, в форме необходимо сделать следующее:
задать метод отправки данных POST (method="post");
установить у атрибута enctype значение multipart/form-data.<form enctype="multipart/form-data" method="post">
   <p><input type="file[]" name="f">
   <input type="submit" value="Отправить"></p>
  </form>
Вопрос: Сортировка строк по большей «схожести»?

Лучший ответ:
Вот пример с алгоритмом Programming Classics: Implementing the World's Best Algorithms by Oliver (ISBN 0-131-00413-1). Есть еще другие реализованные алгоритмы в php, почитайте здесь levenshtein и здесь soundex. Либо можете написать свой алгоритм.$searchPhrase = "Поиск строки 14";
        $words = ['Поиск строки 14', 'рандомный текст 14','строки 14'];

        $wordsWithSimilarity = [];
        foreach ($words as $word) {
            $similarity = similar_text($searchPhrase, $word);
            $wordsWithSimilarity[$similarity] =$word;
        }

        krsort($wordsWithSimilarity);

Худший ответ:
Вот еще вдогонку мускульный вариант)select *, MATCH (`myfield1`, `myfield2`) AGAINST ('Поиск строки 14' IN BOOLEAN MODE) as `score` from `table` WHERE MATCH (`myfield1`, `myfield2`) AGAINST ('Поиск строки 14' IN BOOLEAN MODE) order by `score` desc
Вопрос: Какой язык программирования выбрать, чтобы писать рабочий интерфейс?

Лучший ответ:
PyCharm Community! Там нужно всего лишь загрузить библеотеки типа таких как OpenGL, Directx, Vulkan и др. которые могут создавать интерфейсы.
Но или в Фотошопе создать такой интерфейс с альфа каналом и загрузить в After Effects

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

Лучший ответ:
И не говорите, что за заказчик пошёл. Уже ошибки в работе сайта его не устраивают. Ну не может же один человек за секунду два раза на страницы сайта зайти. Или может? Но зачем же вы тогда такой первичный ключ накрутили?

Худший ответ:
Сделайте индекс по дате неуникальным:ALTER TABLE `statistic` DROP INDEX  `date`;
ALTER TABLE `statistic` ADD INDEX  `date` (`date`);
Вопрос: Где в Laravel находится папка Illuminate\Foundation\Auth\?

Лучший ответ:
vendor/laravel/framevork 
только лучше там не менять ничего

Худший ответ:
Используй IDE, Люк. Например, PHP Storm. При клике на трейт он его откроет и увидишь, где он находится.
Вопрос: Важна ли индексация комментариев для SEO?

Лучший ответ:
Зависит от того что будет в комментариях, если осмысленные тексты длинной хотя бы в абзац то можно индексировать, если фразы типа Агонь, Бугага, Ору как гаубица, то не стоит.

Худший ответ:
Зависит от того насколько интересные тексты у вас в комментариях
Вопрос: Какая система лучше всего подходит для х86-роутера?

Лучший ответ:
RouterOS, JunOs, FreeBSD, любой Linux server, IOS, ddwrt.

Худший ответ:
Ubuntu server - самое большое сообщество и всегда помогут если что не знаешь.
Но для начала я бы советовал не циклиться на терминале. Поставьте с GUI (LDE/XFCE - довольно легкие). Терминал там тоже есть, но можно рядом броузер открыть с советами и помощью.
Вопрос: Перестал работать mysql после обновления ubuntu?

Лучший ответ:
Ты смотришь не логи мускуля а логи systemd, проверь логи в мускуле(в папке /var/log) там должно быть больше информации

Худший ответ:
Проблема была решена таким способом:
Download the mysql-apt-conf tool from dev.mysql.com/downloads/repo/apt
Install the package using sudo dpkg -i /PATH/version-specific-package-name.deb
When installing select MySQL Server & Cluster to whatever you want by pressing enter and selecting one of mysql-5.7 or mysql-8.0 then go to Ok and press enter
Run sudo apt install mysql-server
After the main packages are installed run sudo mysql_secure_installation, this will configure the password and other security stuff for mysql
Вопрос: Как написать в php 7 строку site.ru чтобы «//» не воспринимались как коментарии?

Лучший ответ:
Так же как и в 5...$var = '//site.ru';
$var = $protocol.'//'.$site_ru;

Худший ответ:
Ты при всем желании не сможешь заставить содержимое строки воспринимать как комментарий.
Вопрос: Можно ли отправлять паспортные данные заказчику?

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

Худший ответ:
Хоть бы вразумительное что-то придумали, ей богу, как дети...
Только вдуматься в суть: договора не заключали ... требования от фин. отдела ... фрилансерам настоящим
Просто паспорт ну вообще никак не может быть основанием для платежа, даже с натяжкой, а значит платят из кармана. А если так, то по-моему факт выполненной работы намного больше решает, а не наличие паспорта хз кого вообще)))
По сути: вообще безопасно, только не совсем понятно нахрена он им)) 
Если бы я нервничал по такому поводу - отправил бы фотку, на которой "не очень разборчиво, но в целом - пойдет" (камера ведь плохая в телефоне).
P.S. Хотя скорее всего это просто его проверяют:)
Вопрос: Перешел на https, перестали работать скрипты?

Лучший ответ:
Все ссылки, по которым подгружаются ресурсы, будь то картинки, скрипты и ajax запросы, все они должны работать по https. 
https://blabla-site.com/image.png
https://blabla-site.com/my-script.js
https://blabla-site.com/update/user/21

Худший ответ:
Посмотрите, в консоли должна быть ошибка что-то с текстом "mixed content". Вы перешли на https, и для него все внутренние подгрузки с http - не безопасны. Вот он их и рубит.
Вопрос: В чём суть метода Back Projection?

Лучший ответ:
Коротко прочитал (не разбирая досконально). Вот что мне кажется: выделить области с нужным цветом. (есть пример футболиста, выделяется прямоугольник с зелёной травой, в результате выделяется все области зелёного цвета).
Решается так: переходим из модели RGB в HSV. В первой модели интенсивность зависит от трёх параметров, поэтому двумерную картинку построить сложно. Часто RGB переводят в уровни серого. В HSV можно было взять одну координату "оттенок" (hue), но для двумерной картинки добавили насыщенность (saturation).
В Матлабе есть пример перехода RGB -> Lab, где цвет это две координаты (a, b).

Худший ответ:
Задача: найти области на изучаемом рисунке, которые по цвету похожи на эталонный рисунок.
Совсем упрощая: выберем один цвет и выделим на изучаемом рисунке те области, которые похожи на выбранный цвет. Histogram backprojection делает по сути именно это, но берёт не один цвет, а набор характерных цветов из эталонного рисунка.

Теперь про сам алгоритм, основываясь на документации.
1. Строим гистограмму цветов в эталонном рисунке (т.е. запоминаем то, как часто встречается каждый цвет).
2. Далее для каждой точки на изучаемом рисунке отвечаем на вопрос: насколько вероятно, что её цвет из эталонного рисунка (на основе гистограммы из п.1)
3. Полученный рисунок похожести сглаживаем и по определённому порогу выбираем самые похожие области.
Как итог получаем "маску", размер с изучаемое изображение, где 0 означает, что эта область не похожа на эталонную, а 1, что похожа.

Из описания алгоритма получается, что совершенно никак не используется структура эталонного рисунка. Можно перемешать все пиксели -- это никак не скажется на результате (т.к. гистограмма цветов будет точно такая же). Так же если в эталонном рисунке равномерно встречаются все цвета, то на любом изучаемом рисунке все точки подойдут под такой эталон. Есть смысл использовать histogram backprojection, когда у вас есть объект какого-то выделяющегося цвета, и вы хотите найти его на рисунке.
Вопрос: Как правильно возвращать ошибки в своем API, Laravel?

Лучший ответ:
могу вручную делать return в каждом методе своего API, но это не выглядит правильным
Почему? Это нормальная практика. Каждый метод - это часть контроллера, а контроллер должен возвращать ответ. Ответ в Laravel должен быть инстансом Response (массив автоматически конвертируется в него).если структура изменится, мне придется менять весь свой код
Для таких случаев Лара предоставляет возможность создать свой собственный тип ответа, например, ApiResponse. Соответственно, после создания будете вызывать в коде как-то так:return response()->api($code, $data);
Все форматирование будете делать в классе ApiResponse.
Собственно, чтобы создать, регистрируете в сервис-провайдере новый тип response.Response::macro('api', function ($code, $data) {
    return new ApiResponse($code, $data);
});

Худший ответ:
Единого формата ответа с ошибками от http api не существует. Есть некие претенденты, но это такое. Возвращать - не надо, надо кидать эксепшены и обрабатывать в хендлере. Лучше - если будет какой-то один базовый class AppException, с помощью которого вы сможете контроллировать соответствие ваших же кастомных ошибок на наличие нужных полей (кода, http кода, сообщения, мета инфа). Как делаю я (пока что прокатывает):
1) с сервера отдаю к каждой уникальной ошибке (например той, что выходит за рамки валидатора) свой код ошибки, как с error_code. У тривиальных ошибок (типа not found или validation) - их нет, так как на нее указывает http код (типа 404 и 422).
2) так же к каждому эксепшену в коде пишу месседж, который так же отдаю в ответе во время разработки. На продакшене вырубаю дебаг и меседж пропадает из ответа от сервера, остается http код и "свой код".
Если говорить только об validation error, то делаю как с error_details, а потом фронтер разбирается с этим так, как оно вписывается в дизайн.
Вопрос: Куда пропал псевдо элемент?

Лучший ответ:
Быть может стоит добавитьli:nth-child(6):before{
    content: "6";
}
?
А вообще - зацените демку со счетчиком.

Худший ответ:
Быть может стоит добавитьli:nth-child(6):before{
    content: "6";
}
?
А вообще - зацените демку со счетчиком.
Вопрос: Нужен совет по верстке на Bootstrap 4?

Лучший ответ:
Если Вы используете какую-то технологию, это не значит, что другие нельзя использовать с ней. То что Вы хотите это явно:
https://masonry.desandro.com/
при чем c bootstrap она отлично ладит (с 4-м не юзал, но думаю что проблем быть не должно)

Худший ответ:
В данном случае вы используете сетку, она и не должна себя вести так, как вам нужно. 
Для вашей затеи есть карточки getbootstrap.com/docs/4.0/components/card/#card-columns
Вопрос: Как побороть неопределенность?

Лучший ответ:
Я всегда следовал совету авторов всемирно известного бестселлера "Программист-прагматик" - Эндрю Ханта и Дэвида Томаса, которые пишут: «Изучайте по крайней мере один новый язык ежегодно. Разные языки решают одни и те же проблемы разными способами. Изучив несколько разных подходов, вы сможете расширить свой кругозор и не погрязнуть в рутине.» А перепробовав многое, легко определиться с собственными вкусами и предрасположенностями.

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

Лучший ответ:
на собственных сборках и репаках чаще всего разделяют x32 и 64.

Худший ответ:
думаю это поможет https://habrahabr.ru/post/240793/
А вообще от UEFI лучше отказаться такое овно на самом деле
Вопрос: Как сделать затемнение блока div?

Лучший ответ:
Добавить блоку псевдоэдемент, растянуть на весь блок, задать нужный фон, при ховере на блок показывать его (при необходимости поменять z-index)
https://codepen.io/UnluckySerivelha/pen/VBKPzv

Худший ответ:
Сделать при наведении фон родительского div-а чёрным с нужной прозрачностью, например:.col-xs-6:hover {background: rgba(0,0,0,.2);}
Скорее всего вариант, который вам нужен - здесь
Вопрос: Какой opensource проект в качестве примера при изучении symfony 3?

Лучший ответ:
посмотрите [Knp University] Learn Symfony 3 и будет вам счастье.
Бест практики описаны, как ориентир можно рефакторинг Фаулера держать под рукой и как ни странно практика, много практики, придерживаясь основных идей: логика в сервисах, работа с базой в репозиториях, сущности простые и прозрачные, контроллеры держим тонкими. Внимательно изучите возможности аннотаций, di, security voter`s, расширения твига, ассеты и прочие ништяки симфони, чтобы возможности для реализации правильной архитектуры были максимальными. Если кажется, что с задачей уже не раз сталкивались коллеги ранее, посмотрите готовые бандлы, чтобы не тратить время на велосипеды (за исключением ситуаций прокачки скилла написания оных) Тут главное соблюдать границу между техническим перфекционизмом и реальностью :)
Как уже упоминали демо приложение - вполне достойно изучения, а вот насчет Sylius'a неоднозначное впечатление, довольно давно его просматривал, symfony way как-то не проглядывается, хотя вполне занятно и интересно сделано.
и помните, что это всего лишь фреймворк, даже если под копирку делать, гарантии что все будет верно нет, тут главное научиться думать в новых реалиях (а не пытаться перенести подходы другого фреймворка и ругать, что все плохо заточено)

Худший ответ:
Симфони очень часто используется не полностью, а их набор компонент. Даже на главной странице у них есть список Projects using Symfony - проекты которые используют компоненты Симфони, каждый из которых достоин того чтобы изучить их код.
Ну и отдельно разработчики создали демо приложение с референсными практиками создания сових продуктов на и фреймворке, думаю с него можно начать.
Вопрос: Как заставить ПО работать из одного каталога но на разных рабочих станциях?

Лучший ответ:
Хмм, а если сделать симлинк на шареную папку?
sourcedaddy.com/windows-7/how-to-create-symbolic-l...
Программа будет считать, что она находится где-нибудь в C:\program files, но это будет симлинком на Z:/soft

Худший ответ:
RemoteApp, устанавливаете один раз на сервер в корень, а пользователям отдаёте RDP-ярлык. Заодно обновлять 30 раз не придётся.
Вопрос: Пробелы в пути к файлу для функции system(). Как решить?

Лучший ответ:
Тебе надо операционке дать строку в кавычках, т.е. 
не так: 
c:\Program Files (x86)\Battle.net\Battle.net.exe
а так:
"c:\Program Files (x86)\Battle.net\Battle.net.exe"system("\"c:\\Program Files (x86)\\Battle.net\\Battle.net.exe\"");

Худший ответ:
Тебе надо операционке дать строку в кавычках, т.е. 
не так: 
c:\Program Files (x86)\Battle.net\Battle.net.exe
а так:
"c:\Program Files (x86)\Battle.net\Battle.net.exe"system("\"c:\\Program Files (x86)\\Battle.net\\Battle.net.exe\"");
Вопрос: Рисование графиков, есть ли интересная статья или пример?

Лучший ответ:
Из jquerийных простенький morris и посложнее flot.
Для Анжелы n3. Для любителей Ember Charts.
Простенькие ChartJS и uvCharts. 
Очень легкий и хорошо разжеванный ChartList.
Не менее хорошо разжеванный, но платный, ZingChart.
Поддержку legacy обеспечит FusionCharts - обещают работу на IE6.
Профессионалам понравится список фичей plotly.
Вы бы конкретнее указывали какие графики вам нужны. А то все не подходят, а что нужно - секрет. Хотите создавать свою систему - читайте исходники существующих. - Врятли любая статья будет лучше и более полной чем исходники рабочих библиотек.

Худший ответ:
Графики === D3.js
Можно рендерить в SVG с отличным интерактивом и идеальным качеством печати (вектор же!). Можно и в canvas, если бешеная инфографика с огромным числом элементов (скаттер-плот из десятков тысяч точек). Из минусов не низкий порог вхождения.
Вопрос: Какие есть *VPN/прокси и VDS/VPS-сервисы с линком 100+ Mbit/sec?

Лучший ответ:
Разгонать OpenVPN до 100Мбит - это на самом довольно нетривиальная задача (помним про пропорциональность максимальной скорости передачи данных и RTT), а уж на VDS с процессором, поделённым на несколько виртуальных машин и вовсе.

Худший ответ:
В EarthVPN (https://earthvpn.com ) можно найти серверы, которые: по SOCKS5 выдают вообще космические скорости, а по некоторым протоколам - в районе 100/70...
Вопрос: Сколько времени делать сайт на Bootstrap?

Лучший ответ:
Ранее имел дело только с wordpress, ну так чуток html, css понимаю.
ты будешь делать месяца 2. и есть шанс что не сделаешь вообще
опытный человек сделает за неделю (верстка + натяжка на CMS)

Худший ответ:
20-30 страниц ничего не говорит, все зависит от контента, я к примеру 20 страниц на Bootstrap делаю порядка 10 дней (+/-), для человека не знающего фреймворк месяц минимум, а то и больше.
Вопрос: Какую БД использовать для Android приложения?

Лучший ответ:
Вообще, ответ на этот вопрос сильно зависит от функционала вашего приложения и того, какие данные и какого объема вы в планируете хранить в БД. Без этой детализации вопрос получается очень общим, такой же можно ожидать и ответ.Какого объема и типа данные вы планируете хранить в БД?
Если речь идёт о нескольких тысячах записей, то такое можно хранить и в SQLite на клиентской стороне. Если речь идёт о миллионах записей, то лучше вынести на сторону сервера. Немаловажен ещё и тип и вес этих данных. Если вы планируете хранить только тексты, то такое можно хранить и на стороне клиента. Если же у вас там файлы (например, инструкции к лекарствам) и изображения, то такая БД будет весить побольше и её лучше вынести на сервер.
Если функционал вашего приложения не предполагает большой нагрузки или специфичной работы с данными, то я бы посоветовал остановиться на SQLite. Субъективно у меня складывается впечатление, что для справочника лекарственных препаратов использовать MySQL или PostgreSQL - это из пушки по воробьям. В любом случае, если проект "взлетит", то вы всё перепишете с нуля и хорошенько продумаете архитектуру :)

Худший ответ:
Если для старта и без заморочек - любая ORM вам в помощь. Google советует Room, я лично предпочитаю DBFlow.
Если важна скорость, но не жалко потратить время на разбирательство - Realm. В плане скорости работы приложения - Realm утрет нос даже нативному SQLite
Вопрос: Удаленная помощь в ремонте компьютера?

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

Худший ответ:
Часто перегружается.
1. для начала, отключить автоматическую перезагрузку при сбоях, чтобы увидеть какой BSOD выдаёт, если он имеется и по нему гуглить.
2. снять боковые крышки - пусть охлаждается дополнительно
3. проверить кулера (крутятся ли), мамку на вздутые кондёры
4. проверить что писали комментаторы выше :)
5. попытаться отследить, елси какие закономерности, например, дохнет через 5 минут ил при запуске конкретной игрушки..
6. .........
З.Ы.: если у вас куча лишних денег, то, думаю, не сложно будет найти аникейщика, который за определённую мзду в месяц будет следить за вашим ПК ))) или Вы можете заключить какой договор с компаниями, занимающимися оутсортингом, предоставляя услуги типа HelpDesk и обращаться к ним со своими проблемами ))) как Вам и хочется!
Вопрос: Кто по совместительству отвечает за UX/UI в отсутствие профильного специалиста?

Лучший ответ:
Фронт конечно же

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

Лучший ответ:
Создайте страницу где прописаны и опечатки и не опечатки - ну и весь вопрос в том, что так ли часто ищут Вас по названию организации? Может это неверный подход (оптимизировать под безизвестное название компании) и нужно оптимизировать под поисковые запросы, которые интересны клиентам?

Худший ответ:
Зарегистрировать в Гугл бизнес, картах, например. Сообщить, что вы есть, с таким вот опечаточным именем. Может помочь
Вопрос: Как сверстать данную часть?

Лучший ответ:
есть. Называется position: absolute;

Худший ответ:
Артур вам адаптив нужен? Эм... Я вижу такой вариант (доведись до меня такое заверстать)
1. У самой большой картинки через псевдо даем усы на всю ширину блока (УСИКИ)
2. Малышей раскидываем по сторонам абсолютом с позиционированием на процентах (хоть какая-то адаптивность :))
3. У малышей через псевдо задаем усик в нужную сторону.
4. Играемся с вьюпортом - там где картинка начинает искажаться - убирем усы под дисплей нон и выстаиваем картинки в ряд или как там у вас.
Вопрос: Как считать информацию с ЖК дисплея (как у калькулятора)?

Лучший ответ:
Фотографировать экран + OCR не вариант? Если пойдет, то на Хабре полно статей по реализации

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

Лучший ответ:
Для того чтобы всё заработало - необходимо чтобы input стоял перед label, а не после. CSS селекторы работают только "вперёд", соответственно если хочется завязать изменение стилей на состояние checkbox - он должен располагаться в DOM раньше чем элементы к которым будут применяться стили, зависящие от состояния checkbox'а

Худший ответ:
[type=checkbox]:checked + .my_block {}
в этом вся магия
Вопрос: Заканчивается срок действия сертификата RDP, что делать?

Лучший ответ:
Погуглить ответ? Самое главное научиться пользоваться поиском на Английском языке и % ответов увеличится в несколько раз.
PS. Если коротко, перевыпустить сертификат в оснастке RDP.

Худший ответ:
Самое быстрое и простое решение, это удалить сертификат из ветки remote desktop и терминально зайти на сервер, в этот момент выпустится новый сертификат(самоподписаный) на полгода.
Вопрос: Можно ли написать браузерную игру на одной только джаве?

Лучший ответ:
Сейчас эра framework-ов и игровых движков. Берете cryengine или unreal engine или unity и разрабатываете сразу под все платформы. Не уверен, что там есть варианты c java, как правило там c и/или свой скриптовой язык. Но на выходе под разные платформы получаете разное, для web это будет js.если разрабатывать браузерную игру полностью на джаве
А зачем? Что бы эта игра запустилать, пользователю надо будет скачивать java. Ряд пользователей отсечете. Не проще ли javaScript? 
Java на backend - вижу смысл, но фронт игры должен быть на js

Худший ответ:
https://libgdx.badlogicgames.com/ умеет экспортировать в HTML5 (не знаю, насколько хорошо, там внутри знатный тормозистор GWT).
Для эксперимента/прототипа сгодится, а если взлетит и упретесь в производительность — наймете хорошего джаваскриптизера.
Вопрос: Как застраховаться от недобросовестного клиента, работая на его сервере?

Лучший ответ:
Взять оплату за предыдущие этапы и предоплату за этот.

Худший ответ:
Работать через безопасную сделку