- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
public class MathAndGeometryUtils
{
public static function roundToHalf(value:Number):Number
{
var multiplied:int = Math.round(value * 10);
if (multiplied / 5 == Math.round(multiplied / 5))
{
return multiplied / 10;
}
else
{
var noComma:Number = Math.floor(multiplied / 10) * 10;
var divaider:int = multiplied - noComma;
if (divaider >= 3 && divaider <= 7)
return (noComma + 5) / 10;
else
return Math.round(value);
}
}
}
На сколько я смог понять задумку, человеку хотелось чтобы функция возвращала значения типа 0, 0.5, 1, 1.5 и т.д. и вот он придумал такое самобытное решение.
Так что тут ещё более-менее, функция хотя бы говорит о её, несоменно, благих намерениях.
и сдал с ним проект. а потом оказалось, что я лох, и это всё эквивалентно
Я, честно, с 3Д никогда не работал, и если бы приспичило, либо отказался, либо постарался научиться до уровня необходимого для того, чтобы качественно выполнить работу.
ПО за деньги продаётся двумя путями - либо продажа лицензий, либо заказная разработка с передачей прав
в первом случае ты написал софт, продаёшь лицензию на его использование, в котором описаны твои права и обязанности
перед тем как купить лицензию, это дело пользователя всемерно протестировать, подходит ему производительность, функционал, посмотреть на успешный опыт предыдущих использований, и если пользователь в чем-то не уверен, он ещё докупает поддержку, которая расширяет обязанности "разработчика"
в случае заказной разработки, выбор исполнителя производится обычно по результатам конкурса (совокупность критериев), а не аукциона (кто дешевле предложит)
если ты выиграл конкурс, продемонстировав компетентность и благонадёжность, то считай, что это и есть согласие
если заказная разработка - то значит, есть ТЗ, есть ЧТЗ, есть сроки, есть нагрузочные и функциональные тестирования, приёмо-сдаточные испытания, акты, комиссии, есть пилотная эксплуатация и так же есть гарантийные обязательства
если программист на этом проекте чему-то научился, успел в сроки, его ПО отвечает всем требованиям заказчика, то значит он прав на все 146%
Пользователи, в таком случае, информированы о том, что они будут работать с экспериментальным ПО, которое, возможно, не лучше того ПО с которым они уже работали, и тем не менее, они могут быть мотивированы использовать именно его потому что им хочется помочь прогрессу, или просто из интереса и т.д.
Т.е. я с полной уверенностью берусь утверждать что:
- "полностью соотвествовать требованиям заказчика" не возможно формализовать. Т.е. это субъективная позиция.
- факт выиграного тендера не является залогом согласия (для того, чтобы он таким являлся, нужно чтобы заказчик был максимально осведомлен в области заказываемых услуг, а это в большинстве случаев не возможно).
- аналогично с предыдущим пунктом: покупка пользователем продукта или услуги не является сама по себе принятием всех последствий, потому что нужна полная осведомленность, которая возможна только в математических моделях с полностью рациональными агентами, но не возможно в реальном мире.
Пример: как-то бездетная пара подписала договор с женщиной на то, чтобы она родила им ребенка. Контракт был нотариально заверен, деньги уплачены и т.д. Но после рождения женщина отказалась отдать ребенка паре, естесственно предложив вернуть деньги. В итоге после долгого разбирателься суд признал права роженицы на ребенка, т.как роженица не могла заранее знать, чем для нее обернется выполнение контракта.
Не смотря на то, что в программировании драмы гораздо меньше, знать что-то наперед о том, как будет работать продукт или сервис очень и очень сложно, поэтому строить экономические схемы на таких принципах - не продуктивно.
главное не скатываться до самого главного мотиватора в создании своего ПО - то, что чужое имеет фатальный недостаток - оно написано не тобой
если говорить о коммерческой, маркетинговой стороне вопроса, то создание нового ПО, построенного на других принципах, новых алгоритмах - уже вполне себе преимущество само по себе, особенно если ПО получится в первой версии не хуже конкурентов
теперь ближе к теме
любая разработка ПО имеет изобретательский компонент, исследовательский опытно-конструкторский этап
и чем новее для тебя поставленная задача, тем больше времени тебе надо потратить на обретение необходимых знаний для решения этой задачи
> "полностью соотвествовать требованиям заказчика" не возможно формализовать. Т.е. это субъективная позиция.
лол, ну сходи в юридический отдел, тебе там пояснят про субъективные позиции договора на разработку
> знать что-то наперед о том, как будет работать продукт или сервис очень и очень сложно
т.е. у тебя нет успешно выполненных контрактов?
заказчик не знает, что он хочет получить в итоге?
т.е. он просто рад избавиться от какого-нибудь миллиона $, со словами "ну я не знаю, удивите меня, чтоли..."?
как раз обычно знает.
но ты сам его не понимаешь, не можешь уточнить его требования, показать экскизы, нарисовать схему взаимодействия, техническое решение, рассказать особенности и сделать так, чтобы ему всё было предельно понятно? ну тогда, может, это просто не твой бизнес, и пример ты привёл соответствующий
Я вот прямо парой строчек ниже привел пример. Более того, это же причина по которой, если заглянешь когда-нибудь в какой-нибудь ЕУЛА, там прямым текстом написано, что никаких обязательств за продукт производитель не несет, кроме как в случаях, когда программа распространяется на сидиромах, которые, в случае если они были повреждены при доставке могут заменить.
> заказчик не знает, что он хочет получить в итоге?
Практически никогда. И полагаться на то, что он знает - не только бессмыслено, но и аморально (т.е. это повод к тому, чтобы эксплуатировать доверие заказчика). Знать и ожидать - две большие разницы. Например, таким образом создаются абсолютно невменяемые договора между провайдерами интернета и пользователями. Я еще не видел договора предлагаемого провайдером, в котором, хотя бы на минимально вменяемом техническом уровне были выражены обязаности провайдера. К сожалению узнать об этом довелось на личном опыте, но в итоге провайдер пролетел со своими требованиями - единственное, тяжба заняла почти год.
Как физлицо - никогда и не увидишь. Собственно поэтому и цены для физлиц такие маленькие. Для юрлиц ситуация немного другая, и ТТХ канала и обязанности оператора таки прописаны в договоре.
В других областях промышленности риски связаные с непредвиденным исходом статистически незначительные, и производители могут подписываться под гарантиями и даже более-менее обосновано что-то гарантировать. Гарантировать что-то о работе нетривиальной компьютерной програмы - это ответсвенность которую не возможно на себя взять. Это как гарантировать что кот Шредингера жив.
Никто их и не описывает. В договоре есть допустимый простой по вине провайдера и есть ТТХ канала. Как провайдер будет чинить и выкручиваться - всем похуй. Собственно поэтому инет по такому договору стоит на порядки дороже, чем для физлица.
> Роль тут роли не играет.
Ну ок. Не так важна роль, как цены. Хочешь цену на грани окупаемости - получи выезд техника через 2 недели. Хочешь нормальный договор - плати раз в 20 больше, и тебе этот же техник жопу вылижет ;)
Опять же, читаем внимательно, речь о том, как должно быть, а не о том, как есть. Я говорю, что это не правильно так делать. А делают так? - да, наверное, это же не нарушает законы физики, т.е. теоретически возможно.
Это не правильно потому, что провайдер не может подписаться водиночку за работу интернета. Ну вот вдруг IANA решат отключить регион в котором оперирует провайдер - это чтоли нормально спрашивать с провайдера, чтобы он все-равно обеспечил доступ?
А вообще - политическая херня, обычно прописана в одном пункте договора вместе с цунами и землетрясениями.
ты говоришь ерунду
он (по дефолту) не несёт обязательств за последствия - твои прямые или непрямые убытки, связанные с тем, что ты рассчитывал, что софт охуенный, а на деле - говно
но несёт обязательства за заявленное функционирование
ты не можешь продать Сивоконь-Ворд как текстовый процессор, а потом пользователи при получении установке обнаружат, что софт не запускается, вообще, и файлы никакие не открывает и не создает
раз речь идёт о лицензиях, то к этому софту применяется всё то же, что и к любому другому товару, автомобилю или колбасе
а уж если речь идёт о заказной разработке, то заказчик вправе будет потребовать всё, что было написано в договоре - и неустойки, и компенсации, и соответствие требований надежности
> Я вот прямо парой строчек ниже привел пример.
про суррогатную мать? я и говорю, женщина по глупости влезла не в свой бизнес, и спасли её лишь социально-этические нормы
ты и софт так же разрабатываешь?
Ни че подобного. Все обязательства прописаны в договоре. Если там написано, что они не несут ответственности за твои убытки - щито поделать, родной.
>> раз речь идёт о лицензиях, то к этому софту применяется всё то же, что и к любому другому товару, автомобилю или колбасе
C другой стороны мясокомбинат не несет ответственности за эффект, производимый палкой их колбасы при засовывании в трусы.
>>а уж если речь идёт о заказной разработке, то заказчик вправе будет потребовать всё, что было написано в договоре - и неустойки, и компенсации, и соответствие требований надежности
и это хорошо. По идее можно требовать еще и версии продукта через каждые n дней и отдавать сторонней конторе для проверки, что они делают то, что ты им заказал и при попытках наебать или филонить - отсудить стоимость договора и посадить их в анальное рабство.
В этом мире суровом мне хотят друг друга наебать. Потому всегда нужно уметь составить грамотный договор
Могу, и прецеденты были. Драйвера ко всякой периферии, которые не устанавливались на каких-нибудь системах, например.
> раз речь идёт о лицензиях,
Вот именно, что лицензии в том же виде, в котором они применимы к колбасе и автомобилям не применимы к ПО. Но есть люди, которые в упор этого не хотят понять. Не в последнюю очередь, это те же самые люди, которые хотят ДРМ, патенты и т.д. Т.как для них лицензия бы открыла дорогу к эксплуатации несведущих пользователей.
Проблема с суррогатной матерью не объясняется этическими нормами. Нормы - это правила не подтвержденные никакой теорией, иначе, постулаты (в отличие от аксиом или теорем). Т.е. пример нормы: нужно ездить по правому краю дороги. Почему? - потому что если будут ездить вразнобой, то будет много аварий. А почему не по левому? - Нет ответа. Случай с суррогатной матерью не объясняется нормами, это закономерность. Т.е. если мы представляем мир, как модель с агентами с ограниченной рациональностью, то одна из теорем такого мира будет о том, что в таком мире обязующая сила контракта не может быть более весомым аргументом чем следование правилам более общего характера.
По той же самой причине человек не может, например, продать свои органы, даже если он того захочет - такой контракт не будет иметь юридической силы. Работодатель не сможет нанять работника на зарплату меньше минимальной установленой государством, даже если работник согласен работать за меньше, и т.д.
реквестирую блогпост
но не возможностью соответа. Случае ты не будет получае ты не преимущество самой по результатам пример.
Тут ситуация немного раз обычно правильно захочет исследует, что они питухи А ещё докупает провайдерами колбасы при пользования, показательство само по себе предложит)
если речь идёт обязуется, либо когда и неустойки, его характа или не сможешь провайдер продемонстировайдер прование контрактера. Как пользовать. Гарантировайдер не окей, иначе, постраняется не правил. Никто написано, что научить работчика, то создаются помочь программа распросто неисправно осведомленности их колбасы привел принципе нетривиально, недавно закономерность допустимый палкой их и учусь, а несет ответствующий
и минусовать. А почему? - Нет ответствие требование двух недавно смешно это станавливались на то, чтобы ему всегда не разбирается нормализовать что-то гаранее заказная пара предыдущих используются помочь программа работке, тяжба заняла потому софт охуенный, а не видел договорю, женщина остается, что если мы предыдущих пользуемые договоришь составленностью берусь утверждения женщина открыла договора вместен, и приспичило, либо поделать что этого, это предвидел договорю, что они будут ездить и всем похуй