Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как работают опции: «3 by 3 average», «11 by 11 average» и пр. Magic Wand Tool в Adobe Photoshop?

Лучший ответ:
Алгоритм работы этого инструмента очень простой.
Скажем, у вас есть очень сильно пожатая JPEG-ом картинка, где сплошной цвет в каком-то месте стал из-за артефактов сжатия вовсе не сплошным. А вам нужно получить усредненный цвет для этой области (например, для заливки какой-то другой части изображения). Вот берете и включаете один из этих режимов. Работает точно также как обычная пипетка в один пиксель, только итоговый цвет получается путем поканального сложения значений R,G,B (если вы работаете в RGB-пространстве) и деления результата на число пикселей. То же самое может быть нужно, если вы хотите получить эквивалентный сплошной цвет из сканированного изображения того, что напечатано на принтере или журнальной иллюстрации, потому что там цвета получаются наложением сеток точек разных размеров (растров) и обычной однопиксельной пипеткой вы цвет не получите.
Вообще, вы ставите вопрос неверно: вы пытаетесь изучить абстрактные функции программы, а не идете от конкретной задачи.

Худший ответ:
Мне кажется вопрос не все поняли конкретно... Думаю человек пытался понять как это использовать.)
Грубо говоря, это влияет на область, которую вы обработаете тем или иным инструментом. Особенно когда вам нужно чётко выделить конкретный оттенок, либо сделать эффект в пределах какого-то оттенка, среднего значения цвета.
Вопрос: Как я могу сделать такой же textarea или input?

Лучший ответ:

Иконки можно абсолюно спозиционировать, или сделать им враппер и прижать вправо-вверх.
почему div contenteditable а не input? Потому что если вы хотите вводить несколько строк, вставлять смайлики, гифки, подсвечивать ссылки, и всякое такое, то это невозможно с инпутом, зато вполне работает с contenteditable.

Худший ответ:
но там же три иконки ?_? скрепка, фотик и смайлик...
что бы сделать как на картинке - создаем какой-то враппер
в него закидываем инпут и наши иконки, наверное, тоже инпуты(скрепка, по крайней мере - точно инпут, а фотик и смайлик - кнопки, наверное)
у враппера задаем позишн релатив, дисплей флекс и align-items:center, а этим 3м элементам - позишн абсолют
и каждому из них надо задать какой-то right
еще вариавнт сделать 1 враппер с позишн релатив, дисплей флекс и алаин итемс центер
в этот враппер положить инпут и див.
див будет дисплей флекс и позишн абсолют
внутри дива будут эти 3 элемента со своими стилями
2й вариант даже проще будет(при адаптиве надо будет позиционировать 1 элемент, а не 3)p.s. это всего лишь вариант решения сонного и неопытного верстальщика, не принимайте близко к сердцу)))
Вопрос: C# unit testing best practices?

Лучший ответ:
Использую NUnit + FakeItEasy + Autofixture + Visual Studio Online (с CI).

Худший ответ:
А для BDD  у кого-нибудь есть реальный опыт использования GetGauuge?
Вопрос: Как подключить collapse.js?

Лучший ответ:
Создайте свой набор ресурсов включите в него файл collapse.js и регистрируйте его в необходимом месте.
Например:class CollapseAsset extends AssetBundle
{
    public $sourcePath = '@bower/bootstrap/js';
    public $js= [
        'collapse.js',
    ];

   .....
}
а в нужном месте CollapseAsset::register($this);  // $this - объект представления

Худший ответ:
Не понимаю в чем проблема. Ведь в вашем примере используется bootstrap.min.js и jquery.min.js. Подключаете и нет проблем.
Вопрос: Перенос профиля пользователя на другой компютер, на win10, как?

Лучший ответ:
Для переноса профиля можно использовать утилиту Transwiz, поддерживает Windows XP/Vista/Windows 7/Windows 8 и Windows 10

Худший ответ:
Ответ Microsoft - https://support.microsoft.com/en-us/instantanswers... немного устарел, сейчас программа миграции платная.
Однако МС выпускает еще и такое https://technet.microsoft.com/en-us/itpro/windows/...
Не МС можно отметить www.intowindows.com/how-to-transfer-user-profiles-...
Вопрос: Зачем нужен Null в MySQL?

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

Худший ответ:
Дополню еще 1 вопросом а чем отличается от None?
Вопрос: Какой аудиоиплеер есть с веб интерфейсом на Linux?

Лучший ответ:
как раз то что для Вас нужно ympd

Худший ответ:
mpd + rompr, например.
Вопрос: Подойдёт ли PID регулятор или использовать другой алгоритм?

Лучший ответ:
У вас проблема не на уровне регулирования а на уровне первоначального инженерного проектирования механизма.Нужно исходить из того, что есть.
У вас нет ничего, от слова вообще.
Хотите получить некоторый запас по времени реакции на изменения нагрузки и без изменений существующего механизма регулирования - ставьте маховик поувесистее.
Для любых других вариантов в принципе мало данных, причём не из разряда "может менятся 10 раз" а конкретных расчетов по нагрузке, тайминг диаграм и т.д..

Худший ответ:
при релейном управлении играет роль инерционность "ведомого" и при её недостаточности это никак не решается, перерегулирования (осцилляции об/мин) нельзя избежать.
пид можно попытаться применить, если взять за входное воздействие время перехода 0--1--0 от датчика. для холостого хода можно оценить среднее время и использовать его как нулевую точку. дальше попытаться подобрать под это закон с реальной нагрузкой. будет работать при приблизительно похоже "распределённых во времени" нагрузках.
инженерии тут 0 и успех определится только тем, какой из костылей подойдёт.
Вопрос: Можно ли установить «Алису» на linux через wine?

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

Худший ответ:
На Linux можно Алису поставить через anbox
Вопрос: Правильно ли я все сделал в iptables?

Лучший ответ:
Если ставите политику DROP и на OUTPUT, то нужно в неё добавить симметричные разрешающие правила. Например, если у вас есть правило iptables -A INPUT -p tcp --dport 22 -j ACCEPT, то нужно будет и правило iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT. Но обычной практикой является то, что OUTPUT оставляют пустым с политикой ACCEPT.
Так же обычно добавляют правило типа iptables -A INPUT -i lo -j ACCEPT для того, чтобы разрешить коммуникации между процессами на самом хосте, и правило iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT для того, чтобы разрешить ответные пакеты.
iptables-save не сохраняет изменения, а только выводит текущий набор правил на стандартный вывод. То, где хранятся настройки iptables зависит от дистрибутива Linux. Например, в Debian-подобных дистрибутивах лучше поставить пакеты netfilter-persistent и iptables-persistent, чтобы можно было загружать настройки файерволла при загрузке.
В общем, iptables и настройка файерволла требуют хороших знаний по сетям и протоколам, и с наскока их не получится освоить, а только прочитав документацию (благо, есть неплохой перевод iptables tutorial на opennet.ru).

Худший ответ:
> Говорят что UDP небезопасен и не гарантирует стабильную работу или надо UDP тоже открыть?
надо открывать UDP или не надо - зависит от приложения. если ваш сервер майнкрафта умеет работать по протоколу UDP, то можете открыть, а если он требует работать по протоколу UDP или не умеет работать по протоколу TCP - то открыть UDP придётся.
> Получается теперь я могу заливать фалы на сервер, а скачивать не могу?
можете и заливать, и скачивать.
Вопрос: Какие есть беспроводные наушники со сменными аккумуляторами/батареями до 300 евро?

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

Худший ответ:
Не рекомендую брать наушники Bose QC35 У наушников проблемы с подключением к Windows. Обсуждением завален весь инет, включая официальный форум Bose. Хотя в рейтинге занимает второе место. У меня изначально были Sony WH-1000XM3Звук у них на средних и верхних лучше и звонче. Но на нижних Bose мне нравятся больше. 
Звук для меня изначально показался не самым лучшим (очень хороший, но бывает лучше), по крайней мере за эту цену. Но через пару дней я привык и мой идеал звучания сместился в пользу этих наушников.
Вопрос: Как добавить кода в ajax отправку формы?

Лучший ответ:
Ну можно использовать метод ajaxComplete еще. Он кстати уже после ajaxSuccess срабатывает и содержит всё включая ошибки, результат и т.д.
Почитайте, может подойдет...$(document).ajaxComplete(function(event, xhr, options){
//...
});Спойлер
Cломался хайлайтинг js-a или он и не работал? оО

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

Лучший ответ:
char * a = "hello!";
Для указателя a — разумеется, на стеке.
Строка, на которую он смотрит, "hello",— строковый литерал. Для него память изначально, при пуске программы выделена в сегменте данных. Освобождать не надо. На многих платформах — хоть на это рассчитывать не надо — этот сегмент защищается от записи и при попытке туда записать AV.

Худший ответ:
char * a = "hello!";
Примерно аналогиченstatic char arr[]="hello";
char *a=arr;
Вопрос: Есть ли вероятность,что HDD сломается?

Лучший ответ:
Есть ли вероятность,что HDD сломается?Такая вероятность есть всегда, независимо от возраста диска, и его типа. Новые ломаются ничуть не меньше чем старые.
Вообще средний срок службы HDD около 5лет. В зависимости от нагрузки и удачи он может быть больше или меньше.Опасно ли пользоваться таким диском?Или ничего?Ничуть не опаснее чем новым, если SMART нормальный. Вопрос лишь в производительности.Боюсь что сломается после такого времени работы вместе с данными.Есть очень большая вероятность что это произойдет. И тут разницы нет новый диск или старый.
Если данные ценные - делайте бэкапы.
Если не хотите перерыва в работе - делайте рэйд.
Зачастую надо и то и другое.

Худший ответ:
"выделенный сервер" это физическое устройство или услуга?
Если услуга то срок жизни HDD вас волновать не должен, сохранность ваших данных должна быть прописана в договоре иначе подобная услуга не имеет смысла. Но при этом у вас не может быть доступа к SMART. По этому смею предположить, что вам впарили какую-то левую железяку. На самом деле "выделенный сервер" это просто отдельно стоящий комп на котором лежат какие то данные и крутятся какие то проги которые обеспечивают удаленный доступ к этим данным. Как правило для обеспечения сохранности данных  информация на дисках хранится в RAID массивах. Отказ RAID массива полностью ситуация мало вероятная.
Вопрос: Как выровнять несколько блоков?

Лучший ответ:
Обожаю такие вопросы - Сделай то, не знаю что.
А потом еще 100500 вопросов, типа "А как тут поправить, мне надо было по-другому".
Формулируй вопрос четко, прилагай скриншоты. Сделай сам какой-нибудь код на JSfiddle.
А вот уже после этого "Ребята, Тостер, у меня вот тут не получается".
... Ок. https://jsfiddle.net/webirus/w1Lmugv9/1/

Худший ответ:
"А как тут поправить, мне надо было по-другому" - это не с моей оперы
Вопрос: Как выбрать свой путь?

Лучший ответ:
В будущем я хочу решать сложные интересные задачи, работать с передовыми технологиями, создавать эти технологии. Не хочу верстать Web-странички или делать формочки в приложениях для доступа к БД.
Рекомендую как можно скорее снять розовые очки и отказаться от романтизации сферы. За сложными и большими задачами стоят месяцы-годы страшной рутины. Другими словами, я хочу выбрать конкретные предметную область/специализацию/технологию/язык/платформу для углубленного изучения, но вместе с тем выдержать баланс между наличием интересных задач и возможностью трудоустройства для меня, выпускника вуза без опыта работы.Чем мне заниматься два года?
Определить список наиболее интересных областей. Придумать к каждой из них учебную задачу (какой-нибудь небольшой проект), и по очереди воплощать, делая пометки на полях о собственных ощущениях от процесса. В конце вывод придёт сам собой. Это лучший способ определиться, а на форумах тебе никто толкового не посоветует, просто каждый кулик будет хвалить своё болото со своей колокольни. В будущем меня привлекает работа системного архитектора, исследователя, возможно руководителя.
Возможно, придёшь к выводу, что лучше оставить всю эту рутину с "формочками для доступа к БД" людям с техническим складом ума, а самому двигаться в интересный и ненапряжный проект-менеджмент))

Худший ответ:
Ваши желания вполне понятны и нормальны. Чтобы определиться с направлением - просто попробуйте разное. Можно устроиться на работу, которая покажется наиболее подходящей (по вашему личному мнению), а дальше - сами увидите (со временем) куда двигаться (менять ли работу на другую или же вы с первой попытки нашли свой путь (вряд ли, то такова жизнь)). Нужен опыт занятий в разных областях - иначе никак.
Вопрос: Где применятся Windows server?

Лучший ответ:
Где применятся Windows server?Сфер применения очень много -чаще всего  в качестве офисного сервера небольшой организации - AD, файлопомойка, терминал. Зайдите в любой офис и скорее всего он там используется.
Для организации корпоративной инфраструктуры - серверы хранения данных, серверы БД, виртуализация.
Для организации облачной инфраструктуры, для хостинга веб сервисов.Стоит ли тратить время на его глубокое изучение?Кто же знает что вам стоит делать, а что нет?Если вы водитель автобуса, далекий от IT - наверное не стоит.Если вы веб-разработчик сервисов на Django - ну наверное тоже смысла нет.Если вы системный администратор, и ваша задача администрировать Win серверы, или инфраструктуру с их наличием -тогда думаю стоит.

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

Лучший ответ:
откройте новую консольcd /home/car/projects/
export GOARCH=amd64
export GOROOT=/usr/local/go
export GOPATH=`pwd`
mkdir src
mv pack1 ./src/
cd src/pack1
go install

Худший ответ:
Внутри папки projects у вас должна быть папка src, а уже в ней папки с пакетами.
Вопрос: Для каких проектов нужен Webpack?

Лучший ответ:
Webpack идеально подходит для SPA-приложений. Разумеется, его можно использовать и для классических приложений, хотя это уже будет не так изящно. Разумеется, все вышеперечисленное может и gulp, однако gulp - это все же таск-раннер, т. е. инструмент более общего назначения, а вебпак - это сборщик, т. е. инструмент, заточенный именно под сборку приложений. И да, использование webpack, как правило, освобождает от использование gulp. По поводу плагинов - почитайте доку https://webpack.github.io/, там найдете и про плагины и про все остальное.

Худший ответ:
Для всех в которых есть JavaScript. Я использую gulp в связке с webpack.
Это мой шаблон для старта проектов https://github.com/zoxon/gulp-front
Для оптимизации графики я использую gulp-imagemin, для кода есть uglifyjs
Вопрос: Как загрузить данные из текстового файла в базу данных ArangoDB?

Лучший ответ:
Преобразовать в CSV и импортировать.

Худший ответ:
Держите, на питоне3import sys
import json

notFirst = False

print("[") # start json  array
for data in sys.stdin:
   (name,text) = data.strip().split("|") # split line
   obj = dict(name=name, text=text)  # to dict()

   if notFirst: # avoid first comma for object
     print(",",  end='')
   print(json.dumps(obj, ensure_ascii=False)) # dump json object
   notFirst = True

print("]") # end json array
Сохраняете в файл и делаете так cat mydatafile.txt | python3 txttojson.py > mydatafile.json
Получаете валидный json[
{"text": "Не ела и не курила", "name": "Лошадь"}
,{"text": "Бездушна как всегда", "name": "Розетка"}
,{"text": "Тоже человек", "name": "Насос"}
]
Вопрос: Как правильно реализовать кнопку «запомнить» в программе?

Лучший ответ:
Используйте стандартный механизм хранения настроек приложения: 
https://habr.com/post/271483/
https://stackoverflow.com/questions/453161/best-pr...

Худший ответ:
Сохранить в СУБД или просто файле.
Дополнено позже:
В реестре Windows поле типа REG_SZ.
Вопрос: Можно ли модифицировать вывод декорируемой функции в декораторе?

Лучший ответ:
Потому что 

Худший ответ:
Нашел решение методом проб и ошибок...
return capitalize(fn) - не работает
А вот такой вариант оказался рабочим:return fn().capitalize()
Таким образом, работающий код декоратора:def capitalize(fn):
    """capitalize the putput of the given function
    """
    def wrapper():
        return fn().capitalize()

    return wrapper
Вопрос: Что практичнее изучать ES6 или Typescript?

Лучший ответ:
Стоит учить и то и то TypeScript надмножество JS так что лучше разбираться сразу в двух

Худший ответ:
Typescript можно использовать как тот же ES6, но у tsc ИМХО выше качество генерируемого кода и скорость сборки чем у Babel.
То есть используя Typescript вместо Babel вы практически ничего не теряете, но получаете дополнительные опциональные плюшки.
Вопрос: Возможен ли безболезненный перенос windows server с виртуальной машины на железо?

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

Худший ответ:
Армянское Радио +1
Это в линуксах загрузился с живого диска, fstab поправил, в крайнем случае ядро перекомпилил (если кастомное) и понеслась. В виндах то hal не тот, то чипсет не тот, то контроллер диска не тот, то просто "не хочу я"...
Вопрос: Подойдет ли данный SSD к моей старой материнской палате?

Лучший ответ:
Да.
Все отлично подойдет, и прекрасно будет работать.
SATA 2.0 никак не повлияет на работу SSD, будет работать не хуже чем на SATA 3.0.
Единственный неприятный момент - ваша мат. плата скорее всего не поддерживает интерфейс AHCI, и диск будет работать по интерфейсу IDE, который не поддерживает такие вещи как NCQ, и TRIM.
Поэтому чтобы диск работал эффективно необходимо оставить резерв - over provisioning? Сделать это лучше всего утилитой от производителя.Я бы посоветовал 30-40Гб оставить в резерве.

Худший ответ:
1 - плата скорее всего не поддерживает интерфейс AHCI судя по поколению, плата наверняка поддерживает AHCI. но точный ответ вы можете найти только в опциях биоса. винда 7 точно должна быть установлена после выбора значения опции (хотя есть инструкции как подготовиться на живой системе, к смене опции. гугл в помощь). винда 10, скорее всего сможет адаптироваться на ходу (без гарантии)
2 - интерфейсы абсолютно совместимы. просто скорость будет на уровне меньшего (SATA2). зато будет прогружать его до предела. тут чудо невозможно. но не факт что бюджетный SSD с SATA3 имеет скорость на максимум SATA3. так что возможно потери будут весьма незначительными
Вопрос: Как правильно верстать такие переходы?

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

Худший ответ:
Самый правильный вариант — с помощью clip-path, потому что с его помощью безо всякого вращения можно обрезать по формуле блок сверху и снизу. При этом, можно использовать значения по типу calc(100% - 50px), чтобы при изменении ширины экрана, область «скоса» всегда равнялась, как в значении выше, 50 пикселям, что упрощает совмещение нескольких таких блоков с помощью отрицательных margin'ов ( margin: -50px 0; ).
Если делать трансформации обёртки, как писали выше, то придётся на каждом отдельном разрешении следить за тем, чтобы, во-первых, между такими блоками не было зазоров, а также за тем, чтобы внутренний отступ до контента был в порядке. 
Одна проблема — поддержка clip-path со стороны браузеров. Вот пример реализации такого подхода: proappliancerepair.com. У меня не стояло задачи поддерживать старые браузеры, поэтому использовал clip-path смело.
Вопрос: С чего начать разработку стартапа?

Лучший ответ:
Всё imho:
1) Техническое задание стартапа должно описывать функционал + подробно детализировать неявные моменты.
Писать по госту на 40+ листов - верный путь в никуда.
Нанимать на написание ТЗ категорически никого не советую - это должны сделать Вы, как носитель идеи.
Если за дизайн в проекте отвечаете Вы, в принципе готовый дизайн + frontend сценарии + неявные backend сценарии это вполне нормальное ТЗ.
* frontend сценарии - набор экранов приложения со стрелочками "что происходит если нажать сюда"
** backend сценарии - вся логика которая не очевидна из дизайна.
Вырожденые примеры: 
"Пользователь при регистрации вводит поля email и пароль, они сохраняются в базу" - не нужный сценарий, это очевидно из дизайна.
"После регистрации пользователю приходит письмо, вот ссылка на макет" - нужный сценарий
*** Вообще странно брать инвестиции не имея ТЗ и соответственно оценки разработки. 
По опыту 30k$ это скорее MVP чем полноценный продукт.
2) hantim.ru , hh.ru , проверенные аутсорсеры итд
3) Правильный порядок: ТЗ > Дизайн > Проектирование Backend > Разработка Backend > Разработка Mobile.
* Если горят сроки можно перед разработкой backend за день собрать моки и вести разработку на них.
** Если в backend есть вещи не завязанные на дизайн - backend можно начать делать параллельно с дизайном 
4) В общем случае ответ на вопрос - нанять грамотного человека который будет рулить процессом разработки, но Вы тогда не влезете в бюджет. Книжек по менеджменту море, читайте )

Худший ответ:
Как грамотно составить техническое задание?
Составляйте, как умеете, а если плохо умеете, то лучше по минимуму и согласовывайте всё с разработчиком, хорошее техническое задание - это часть работы разработчика, с таким будет легче, можно точнее озвучить сумму, и она будет меньше, но плохое - это часть работы "со знаком минус".2) Как найти программиста для backend разработки? 
На фрилансе.На каком этапе нанимать iOS разработчика?
Сразу же, и для Android тоже.Как лучше наладить сей процесс для лучшей производительности измеряемой в качестве и времени?
На лучшую производительность у вас даже всей суммы стартапа не хватит, так что конкретизируйте.
Вопрос: Как правильно составить техническое задание на разработку сервиса?

Лучший ответ:
Должны быть описаны бизнес процессы и функциональные сценарии

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

Лучший ответ:
А что имеете ввиду, когда пишете о наборе инструментов ?
Несколько мыслей вслух
1) Если проект с почасовой оплатой, то ничего страшного в том, чтобы дать заказчику доступ к репозиторию с кодом. Ему спокойно, Вам не напряжно.
2) Можно  утвердить время для ежедневных (или пару раз в неделю) митингов по скайпу. Все знают точное время начала и всегда готовы. Всегда можно заранее перенести время-дату.
3) Для небольших проектов кажется удобным трелло. Нужно только сразу договориться о правилах. Писать только по существу. Каждый тикет - одна тема. Итд итп. Для маленьких проектов бесплатного функционала хватает с головой.
4) Трелло позволяет прикреплять к теме видео демонстрации реализации отдельных задач. Пояснения голосом помогают кратко показать что и как работает. 
5) О некоторых вещах лучше договориться на берегу. Например : выходные дни - святое))). Игнорируются только в случае серьезного форс-мажора )) итд.
Самое главное, чтобы в процессе принимали участие адекватные люди. Остальное  приложится )

Худший ответ:
1) Общение - любой чат клиент (whatsapp/telegram/vk/skype), по возможности аудио звонки (каждый клиент помечен кто он и по какому проекту работа), или на худой конец почта (многие до сих пор придерживаются общения по почте...)
2) Если проект большой и требует кучи задач - Общая доска в trello с клиентом, где ведется список задач, обсуждение по доскам, если надо туда подтягивается дизайнер или кто-то еще, для более оперативного ответа.
3) Личная доска Trello, где вкратце написаны задачи и стоимость + срок выполнения. (используется для мелких задач где не нужен 2 пункт)
4) репозиторий на bitbucket, если клиенту нужен код и хочет чувствовать спокойствие :)
5) zenmoney для учета финансов.
Никогда не работал с 10+ клиентами одновременно, поэтому схема работы более чем устраивает.