Заказал написание фронтенда к своей софтине для макоси. Пара полей ввода, пара чекбосков, слайдер и выпадающий список, плюс запуск бэкенда и чтение его stdout в реалтайме.. Сам был не очень то в программировании под макось еще разбирался, решил сэкономить время и нервы, хотя по моим расчетам, профи это бы сделал за 2 часа.
Написал подробное ТЗ (на англ), предоставил тестовый бэкенд (на скриптовом языке), протоколы общения и тд.
Запостил его на guru.com, так как знал что программеров там поболее. Сделал поиск по ключевым словам, пригласил 70 кодеров. Биллы запостило только пара ч-к, но один подсказал новые ключевые слова. Сделал поиск по другим ключевым словам, пригласил еще 100 ч-к. Бидов напостили около 7 ч-к в итоге, в районе от 250 до 400 баксов. Мне показалось, что это перебор.
Запостил проект на rentacoder.com. Бид был только 1, на 100, от француза лет 25. Утвердил его к проекту, он сразу спрашивает – ну давай мне ТЗ. Оказывается, он не заметил, что ТЗ было приложено к проекту.. Сказал ему что оно приложено – он сказал что это будет стоить не 100, а 150. Я сказал что это твой косяк, что ты не заметил ТЗ до размещения бида, согласен добавить 25. Он согасился, я ему кинул на пейпал эти 25 баксов..
Дальше начались странности. Спустя пару дней сказал что работа закончена, приложил сырцы, и попросил деньги. Проверил, почти в каждом пункте ТЗ было что-то недоделано или немного не так, но по мелочам. Мелочей таких оказалось 7 или более, причем исправление одной мелочи приводило еще к 1 багу и тд. И еще был крупный баг с чтением stdout бэкенда, который он списывал на кривость макоси, делающий прогу почти бесполезной. Мне пришлось читая 3 часа всякие доки, придумать солюшн (он не ту функцию вызывал). Он мои примеры кода смог интегрировать с 4-го раза (то изменение в одной строке не заметит, то в другой и тд). В общем, полностью его версия соответствовала ТЗ только спустя 2 недели (мы запостили в сумме 70 писем в message board). И код он выдал не очень интеллектуальный, можно было его короче сделать (можно было его сильно упростить, вынеся общие куски кода в функции).
Примерно на середине переписки закинул ему 50 баксов (из 100 которые были в escrow). Когда все было готово, я понял что мне надо еще прикрутить триальные ограничения (в виде нажатия кнопки по таймеру для остановки бэкенда и показ наг-скрина что это триал и что будут такие-то ограничения – для профи вообще 5 минут в сумме).
Отписал ему в приват (на личное мыло, минуя RAC). Он сказал что это прикрутит за доп. 150 баксов.
Я офигел от такого (ну ладно там 30 баксов или 40). Сказал что ты затянул сдачу проекта на 2 недели, упарил мне мозг и нервы, и типа должен быть счастлив искупить свою вину таким дешевым способом. Он отказался с какими-то тупыми и наглыми доводами.
В частности, что он фрилансер и берет 80 евро в час со всех (как и все другие фрилансеры во Франции) и никто из заказчиков не пикает, что нормальной конторе 150 евро - пустяк.
Я такой наглости допустить не мог!
Долго ему объяснял что он не прав, сначала выбивал из него письменные извинения. Раза с 10 он согласился извиниться. Потом я начал убеждать его что триальную функциональность надо сделать и это разумно и честно для обоих (и тогда я не напишу правдивого негативного отзыва о нем).. В общем, он вел себя нагло до конца.
В общем я затребовал процедуру разрешения конфликтов на rentacoder.com. Написал что кодер затягивал все как мог, сделал 10 детских ошибок в сотне строк кода и тд, в общем оставьте мне 50 баксов из тех 100, которые были в escrow. Конфликтом начала рулить какая-то тетка из персонала RAC. Сначала она запросила доводы обоих сторон и высыпала пару страниц юридического текста про ответственность и тд. Я привел ссылки на посты которые подтверждали мои слова. Француз сдался (типа я нифига не понимаю, согласен на любой вариант, время жалко). В общем, права на код и 50 баксов остались у меня, я победил. Не то что денег жалко, просто такой беспредел недопустим..
Триальную функциональность написал сам, за 5 часов, невероятно продвинувшись в разработке гуи под макось.. Очень хорошо что мне довелось это сделать самому, так как пришлось это менять пару раз..