LINUX.ORG.RU
ФорумTalks

Программные системы глазами пессимиста

 , депрессии тред,


2

2

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

  • Откатоемкие технологии, где ынтырпрайзные коробки стоят миллионы бабла за каждое процессорное ядро, популярны не только в этой стране, а только разве что не в Антарктиде.
  • При этом вся простота настройки и работы с ними существует только в воображении чувачков из отдела продаж, которые и продукта-то не видели. Для правильной установки и настройки нужно прочитать два талмуда, поиграться в конструктор типа генты, только все делать руками. Хорошо еще посетить пару платных курсов, где настраивать покажут после долгого трепа о достоинствах продукта.
  • Нет, конечно, бывает автоинсталлятор, который круто смотрится на скринкастах и презентациях, и который даже работает иногда, но в реальном применении после него нужно править почти все.
  • На самом деле можно ходить на курсы, прочесть все книжки и не узнать главного нюанса, из-за которого все либо глючит, либо тормозит, либо не работает на данной конкретной конфигурации. Для этого нужно нанимать чувака, у которого с этой системой 10 лет полового опыта. Судя по желаемой зарплате, чувак питается фуа-грой вместо гречки.
  • Исходники программ не хотят открывать в основном не из-за патентов (таких контор, будем-ка честны, единицы), а из-за того, что код адски отвратителен, дыряв и вызывает рвоту.
  • Если большой многоцелевой программный комплекс написан на одном языке, во имя святой унификации и простоты сопровождения, половина кода будет представлять собой жуткие костыли и упражнения по использованию надутого презерватива в качестве дирижабля — даже самый универсальный язык не учитывает специфики всех возможных задач.
  • Если большой многоцелевой программный комплекс написан на разных языках, во имя использования оптимального инструмента для каждой задачи — половина кода будет представлять собой жуткие костыли для интеграции всего этого барахла — обертки, скрипты еще на нескольких языках, а список зависимостей будет длиной с Юлькин приговор.
  • Документации много не бывает. Ее в основном вообще не бывает, в частности там, где она действительно нужна.
  • Никогда не надо говорить, каково целевое разрешение экрана, при постановке задания на заказное ПО. Хотя спрашивать будут. Потом окажется, что с другим разрешением ПО не способно работать в принципе.
  • Во время получасового даунтайма в связи с апгрейдом системы для пользователей этой самой системы главное — каждый день на работу приходить вовремя, а вдруг наконец-таки проапгрейдили.
  • Те, кто практикуют апгрейд без даунтайма, обычно умалчивают, сколько времени длится цирк после такого апгрейда. А глюки там порой феерические, из-за того, что не весь код сразу раздуплил, что часть его проапгрейдили.
  • Особая веселуха — это когда горячий апгрейд работающую программу настроит, и подымет все что надо, а постоянный конфиг и автозапуск прописать забудет. Перезагрузка-то рано или поздно случится.
  • Несмотря на то, что только ленивый не кричит на всех углах, что у него-де TDD и покрытие тестами 100%, качество ПО деградирует просто-таки стремительно. Где они только набирают столько багов, с таким скрупулезным-то тестированием?

Добавляйте своего пессимизма, дамы и господа.

★★★★★

Последнее исправление: shimon (всего исправлений: 2)
Ответ на: комментарий от pekmop1024

:D

Тут на ЛОР был где то прекрасный пост на тему того что потреблядство это когда у пациента самоидентификация происходит через потребление, в том числе демонстративное. И связанные с этим феномены - жуткую боль в заднем проходе когда на пути данного демонстративного потребления стоят какие то преграды.

И тут, опаньки... мы читаем вот это :

Долговечных нынче не делают
все имеют гарантию в один (!) год
сраное говно, которое подарила мне фирма, стоило тогда 11500 евро

То есть полный эмоций и ненависти пост о том как конкретному индивиду мешают осуществлять его само-идентифицирующее и статусное потребление.

А ты уже стал типичной потреблядью. :)

Понимаете, я просто потреблядь - обычный современный человек. Вы же потреблядь эталонная, в конец зажравшаяся, из палаты мер и весов. :D

Вы клеймите потреблядство, ругая других людей за то что они не дают вам потворствовать вашим илитным потребительским привычкам про фруагруа и распаянные конденсаторы в роутерах.

При этом вам плевать что благодаря дешевизне роутеров ими может воспользоваться любой нищеброд при этом получая достаточную зарплату что бы его таки купить. Вы считаете что роутер должен стоить копейки но быть ох**нного качества, пусть хоть китайские негры рабы сдохнут каждый конденсатор припаивая.

Нормальный такой плантатор, чо. Потреблядству - бой, всем этим заморочкам северян, вроде экономики - бой. Она мешает тру южной духовности и благородству

Скучаете вы, в общем, по правильному рису качественно перебранному сисястыми рабынями Изаурами :D

kernel ★★☆
()
Ответ на: комментарий от tailgunner

Я ничего не путаю. Ты не можешь привести ни примеров «вообще договоров», ни даже ссылок на слухи о таких «вообще договорах». При том, что даже я знаю об особых отношениях MS с некоторыми заказчиками (хотя эти отношения не включают в себя ответственности за факапы - только помощь в профилактике и устранении проблем).

Я тебе как реальный источник слухов говорю - такие договора реально есть. Вот в конкретно в компаниях которые пишут большой полукастомный софт для телекомов. Про миллиарды тебе r ответил - никто не готов за такой уровень ответственности платить. По этому именно миллиардов и нет. А договора не на 10 баксов - есть.

Кто сказал, что без договоров? Если без договоров - почему они не были заключены?

Какие то договора были заключены, это очевидно. Но так как никаких слухов о платежах, не просочилось можно сделать вывод что никаких договоров на тему отвественности не было.

Почему такие договора не были заключены вопрос не ко мне - а к тем самым отвественным лица в францтелекоме. Их и спрашивай.

Пока что практик r назвал только пятизначные суммы за конкретно измеримые вещи.

То есть тебя смущает что практик r назвал только пятизначные суммы не у самого крупного заказчика? В случае падения спутниковой сети это тоже вполне измеримые вещи - но тут их измерять не стали, как мы тут подозреваем.

kernel ★★☆
()
Ответ на: комментарий от kernel

Какие то договора были заключены, это очевидно. Но так как никаких слухов о платежах, не просочилось можно сделать вывод что никаких договоров на тему отвественности не было.

Никаких договоров об уплате «за мультимиллиардные косяки из собственного кармана» нет. Я сильно подозреваю, что все эти «реальные договоры» повторяют презренный MS EULA - ответственность разработчика ограничена суммой, заплаченной за программу.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Никаких договоров об уплате «за мультимиллиардные косяки из собственного кармана» нет.

Задолбал. Вот специально сейчас еще раз проконсультировался у непосредственно работающих в этой области людей.

Все прописано и реально могут быть почти любые суммы, шесть нулей - запросто. Особенно за случай «сервис упал по нашей вине» («упала вся спутниковая сеть», да). В договоре прописан четкий алгоритм ответственности, в котором прямая связь с потерями клиента.

Но так как все делается для того что бы такой случай не наступил, в реальности, то и примеров того что бы такие суммы наступали - у меня нет. Косяки только на более мелкие суммы обычно. Но на четыре-пять нулей зеленых - легко, это реальные рядовые случаи.

Я тут говорю о конкретных компаниях разработчиках полукастомного софта для телекомов. Что у MS - не знаю, но подозреваю что это и MS теоретически может.

Так что твои проблемы - можешь и дальше подозревать что нет договоров. Есть, все есть. Можно такие договора заключить и их в соответствующих областях заключают.

kernel ★★☆
()
Ответ на: комментарий от kernel

Никаких договоров об уплате «за мультимиллиардные косяки из собственного кармана» нет.

Задолбал. Вот специально сейчас еще раз проконсультировался у непосредственно работающих в этой области людей.

Ну наконец-то.

tailgunner ★★★★★
()
Ответ на: комментарий от kernel

К стати вспоминаю «нецифровую» часть сервиса - видел как все работает в англии - там где надо касеты доставлять курьером. ТАм обычно SLA - 1 час - так там не парттайм студент на скутере - там это вообще как кадры из фантастики 80х выглядит - появляется у дверей персонаж, который одет как инопланетянин - крутая мотозащита с головы до пяток, почти скафандр, не поднимает даже стекло на шлеме, не снимая перчаток берет касеты из аута, кидает свои в ин, и тут же сливает на мощном байке, даже ни с кем не поздоровавшись, потому что SLA 1 час обозначает обычно, что материал пойдет в эфир в течении следующего часа, и пробки/дождь/снег никого не парят - касета должна быть в слоте к эфиру. То же самое с цифрой - хотя там обычно SLA 12-24 часа.

То есть суть в том что никто там не проверяет у броадкастера есть материал или нет, что там записано и в нужном ли формате - согласно сервис агримент, когда техник нажмет кнопку play, оно должно уже там лежать, правильно названное, соответствующего формата и без факапов. И если там PAL вместо NTSC да еше и хоум порно вместо заставки олимпиады - то факап происходит прямо с эфиром. И за это по шапке дают серьезными деньгами - если пацаны платят такие деньги за грубо говоря «передачу файлов по сетке» файлы должны доставлятся.

r ★★★★★
()
Ответ на: комментарий от r

появляется у дверей персонаж, который одет как инопланетянин - крутая мотозащита с головы до пяток, почти скафандр, не поднимает даже стекло на шлеме, не снимая перчаток берет касеты из аута, кидает свои в ин, и тут же сливает на мощном байке, даже ни с кем не поздоровавшись, потому что SLA 1 час обозначает обычно, что материал пойдет в эфир в течении следующего часа

«Доставщик принадлежит к элитному ордену, к избранным среди людей. Боевого духа у него выше крыши. Сейчас ему предстоит третья миссия за эту ночь. Черная, как активированный уголь, форма словно высасывает свет из воздуха. Пуля отскочит от арахноволокон этого скафандра, точно птица-крапивник от садовой двери, но испарина проносится как вихрь через лес, только что политый напалмом. Надо всеми суставами и костями — синтезированный бронегель: на ощупь как зернистый студень, защищает, как стопка телефонных справочников».

%)

tailgunner ★★★★★
()

Юлькин приговор


ловко нацпол спрятал среди кучи писанины
Это всё фигня ребята, тут в твиттере ссылка пробегала, оказывается lovesan свою вундервафлю, которую давно пилит, на дотнет с С# переводит, видимо, в лиспах всё совсем плохо.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Virtuos86

Да тебе палец покажи - нацпол увидишь. А лавсана в толксах уже обсосали в отдельном топике.

shimon ★★★★★
() автор топика
Ответ на: комментарий от quasimoto

потому что система исключений / тредов GHC позволяет превращать падающие программы в нападающие).

то есть они нападают на программистов? Блжд, хаскельщиков и так мало, а их ещё и собственные программы бьют. Суровый язык для суровых штангистов^Wлюдей.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Virtuos86

См. комментарий, на который я выше ответил. Думаю, вполне достаточный такой пруф.

shimon ★★★★★
() автор топика
Ответ на: комментарий от quiet_readonly

Мне вот программирование в visual studio кажется унизительным для студента - столько ненужного в ней приходится делать в сравнении с linux + qtcreator

MSVS получше будет чем это гогно. Там из хорошего наверное qmake, и то под вопросом. Хоть система сборки отвязана от IDE. Но клепать формочки на Qt адовый ад. Отгреб один раз от Qwt. Возюкал их компоненты целый день. Потом забил и написал за меньшее время график на Gtk/Cairo

vertexua ★★★★★
()
Ответ на: комментарий от kernel

Но так как все делается для того что бы такой случай не наступил, в реальности, то и примеров того что бы такие суммы наступали - у меня нет. Косяки только на более мелкие суммы обычно. Но на четыре-пять нулей зеленых - легко, это реальные рядовые случаи.

люди, которые подписали такой договор (со стороны разработчиков) - лохи :) Ибо если в отрасли исторически сложилось не нести ответственность, зачем делать себе хуже?

Harald ★★★★★
()
Ответ на: комментарий от Harald

люди, которые подписали такой договор (со стороны разработчиков) - лохи :)

У меня к вам только один тезис. Вы - рашкован :D

PS
В отрасли вообще, среди серьезных людей, как раз сложилось наоборот. Это в сегменте даунов-нищебродов сначала «воруют» софт потом прилюдно страдают от того что вирусы сожрали любимое порево. И требуют возмездие для писателей неправильного софта :D

kernel ★★☆
()
Ответ на: комментарий от vertexua

Это называется business value driven development. Наибольшее зло

То есть софт для потребителя который на нем деньги будет зарабатывать созданный согласно потребителя потребностям - максимальное зло.... :D

А максимальное добро это наверное софт в котором business value не имеет никакого значения. Какой нибудь софт по написанию х***ямбл для написания х***ямбл, ненужный никому кроме элитных задротов его ымператорского величества. Понемаю. :D

kernel ★★☆
()
Ответ на: комментарий от kernel

У меня к вам только один тезис. Вы - рашкован :D

я в ней даже не живу :)

В отрасли вообще, среди серьезных людей, как раз сложилось наоборот. Это в сегменте даунов-нищебродов сначала «воруют» софт потом прилюдно страдают от того что вирусы сожрали любимое порево. И требуют возмездие для писателей неправильного софта :D

сами виноваты, нужно уметь отличать правильный софт от неправильного

Harald ★★★★★
()
Ответ на: комментарий от Harald

я в ней даже не живу :)

Когда это кому-то мешало? Если человек говорит на рашкованском языке, ходит по рашкованским энторнетам и отпускает рашкованские комментарии про лохов, он рашкован. :D

сами виноваты, нужно уметь отличать правильный софт от неправильного

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

kernel ★★☆
()
Ответ на: комментарий от kernel

Ну-ну, предоставить глупую крайность - ничего не доказывает.

Клиенту самому не выгодно что менеджеры заставят разработчиков до конца недели набыдлокодить говно, которое потом будут месяц рефакторить, когда нужно будет добавить новую простую функциональность, но она не будет поддерживаться моделью данных. Зло - это когда планирование учитывает только прикручивание колесиков к ball of mud, но бизнес не дает время на чистое и поддерживаемое в будущем решение

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

бизнес не дает время на <…> поддерживаемое в будущем решение

Может это просто херовый бизнес? Если в нём нет заделов на будущее, то и в ТЗ их не будет.

Xenesz ★★★★
()
Ответ на: комментарий от vertexua

Ну-ну, предоставить глупую крайность - ничего не доказывает.

Вы бы себе это сказали перед зеркалом , прежде чем «глупую крайность» предоставлять, вот эту вот: «Это называется business value driven development. Наибольшее зло»

Зло - это когда планирование учитывает только прикручивание колесиков к ball of mud, но бизнес не дает время на чистое и поддерживаемое в будущем решение

Клиенту самому не выгодно

Не факт. Если вы его попытаетесь рассмотреть этот вопрос оторвавшись от узкопрофессиональных обид(вроде заказчик - идиот), вы поймете что такой подход обусловлен исключительно скоростью изменений.

Если у клиента требования все равно изменятся, не важно на сколько хорошо было предыдущее решение. Вы конечно можете сказать что былоо бы время, вы бы заложили идеальную архитектуру+базис и ее бы только дорабатывали .... но это по факту именно вам нужно. Вы пойдете этот продукт конкурентам клиента продавать.

Если же есть некое сложившиеся представление о софте то обычно есть фирмы которые имеют решение для этой области, вполне годное для доработки.

kernel ★★☆
()
Ответ на: комментарий от Xenesz

Может это просто херовый бизнес? Если в нём нет заделов на будущее, то и в ТЗ их не будет.

Нет, это просто бизнес который занимается бизнесом, а не дрочением на крутые ойти архитектуры и битики с байтиками. Просто программисты настолько уткнулись в монитор уже, что любые «заделы на будущее» воспринимают в терминах своего ойти.

kernel ★★☆
()
Ответ на: комментарий от kernel

бизнес который занимается бизнесом

Когда бизнес покупает поддоны или кассовые аппараты, он обязан помнить, что вся эта фигня может не вписаться в новый торговый зал, или почему-либо стать неактуальной, или потребовать замены/ремонта. Чем ПО такое особенное?

Xenesz ★★★★
()
Ответ на: комментарий от kernel

это по факту именно вам нужно. Вы пойдете этот продукт конкурентам клиента продавать.

А заказчик спит и видит, как при заказе любой фигни поставщик начинает с возведения цехов.

Xenesz ★★★★
()
Ответ на: комментарий от Xenesz

А заказчик спит и видит, как при заказе любой фигни поставщик начинает с возведения цехов.

Именно. Средний ЛОРовский пограммист почему то считает что ему заказчик должен возведение цехов со всеми инженерными коммуникациями на 100км до города оплатить. Если иначе - страшно обижается и начинает обызыватся «ушами к комку грязи» - так как должна быть красивая правильная архитектура, да.

kernel ★★☆
()
Ответ на: комментарий от Xenesz

Когда бизнес покупает поддоны или кассовые аппараты, он обязан помнить, что вся эта фигня может не вписаться в новый торговый зал, или почему-либо стать неактуальной, или потребовать замены/ремонта.

Прикиньте примерно число того что может случится с кассовыми аппаратами, особенно одиночными....

Чем ПО такое особенное?

А потом прикиньте число этого самого в случае ПО... Разница на много порядков. ПО очень особый объект - с одной стороны какие то циферки, с другой стороны оно держит в себе сложность горадо больших порядков чем средний объект из материального мира.


По этому нормальная схема это когда устоявшиеся кейсы и почти готовое ПО, с мелкими доработками максимум. И толпа бизнесаналитиков манагеров и прочих ненавистных дауну с ЛОРа посредников, сеть внедренцев-франчизеров как у 1С для *любого* софта - которые концентрируют и типизируют спрос - и так далее.

kernel ★★☆
()
Ответ на: комментарий от kernel

Ну странно, что заказчик не нашёл сразу готовое решение в Коране в гугеле. Там же всё есть, и никаких архитектур придумывать не надо.

Xenesz ★★★★
()
Ответ на: комментарий от Xenesz

Ну странно, что заказчик не нашёл сразу готовое решение в Коране в гугеле. Там же всё есть, и никаких архитектур придумывать не надо.

Как раз ничего странного. Заказчик всегда идиот и не знает что ему нужно. По этому разумный заказчик идет не в гугл, а к ближашим внедренцам-консалтерам. Которые таки совместно с заказчиком и выясняют что ему нужно, смотря на его бизнеспроцессы. Долгий и болезненный процесс. Кстати в любом месте где от этого самого компьютера хоть чтото зависит - например в бугалтерии - заказчик так и поступает.

В среднем в РФ проблема в том что
а) для заказчика программист это помесь водителя и эникещика, которая может сесть и за пару вечеров написать гугл. Иначе это плохой программист.
б) заказчик думает что ему для любого действия с компьютером нужен именно программист. Других слов он все равно не знает.

kernel ★★☆
()
Ответ на: комментарий от kernel

почти готовое ПО, с мелкими доработками максимум

По времени это должно быть замечательно, ну а по цене? Я к заказному ПО не приценивался, но сайтоклепательная контора смело просит за «визитку» полкило баксов, ещё и поставка даже не через неделю. Манагеров кормить же надо.

Xenesz ★★★★
()
Ответ на: комментарий от kernel

разумный заказчик идет не в гугл

Это был сарказм, например. Тащемта заказчик в любом случае платит за архитектуру, но она будет либо на основе чего-то, либо с нуля и либо сляпанной быстро и грязно, либо малость продуманной.

для заказчика программист это помесь водителя и эникещика

Я подозреваю, что бизнесмены, которые думали, что булки растут на деревьях, уже не в бизнесе. Я надеюсь, что с ПО процесс тоже идёт.

Xenesz ★★★★
()
Ответ на: комментарий от Xenesz

По времени это должно быть замечательно, ну а по цене?

По цене это как раз должно быть оптимально. Другое дело что есть вполне конкретный рынок, где все может быть очень печально.

Я к заказному ПО не приценивался, но сайтоклепательная контора смело просит за «визитку» полкило баксов, ещё и поставка даже не через неделю. Манагеров кормить же надо.

Вы понимаете за что вы платите? Видимо нет. А я вам поясню суть полкила баксов.

Начнем с того что ~40% с этого это налоги и вычеты. То есть для подрядчика речь идет не о полкиле баксов, а о трестах граммах - именно столько он может заплатить программизду или манагеру.

Во первых заказчик понимает что ради полкила судится никто не пойдет - значит можно кинуть... или просто отменить заказ на полусделанном сайте. Естественно «добросовестные» заказчики оплачивают то, что творят «недобросовестные». В кавычках потому что это одни и те же заказчики. Кинул 3-4 раза, «непонравилось!», на пятый заплатил. :D

При этом юристам естественно приходится все равно платить....

Во вторых заказчик будет до каких либо выплат болтать, болтать и болтать с манагерами. Выясняя все детали, сношая мозг, тратя время. И после этого уже сказать что «ему тут не нравится». И кто за это должен платить? Манагер весь день е**мый заказчиком - а денег нет. А зарплаты и расходы есть. Значит, опять же, платит тот заказчик который таки заказал.

Теперь фаза когда заказ «в работе». Что делает заказчик? Ах да - дай ему хоть полшанса начинает обсуждать дизайн и требовать подвинуть кнопки влево-вправо. Заказчику больше нечего делать - работают таджики и студенты, а ему скучно. Скучно ему потому что он мудак и с ним никто разговаривать бесплатно не будет.Только кидала или бандит(другой заказчик) который хочет его кинуть. И это если он не пытатется неделями обсуждать и составлять ТЗ....

Потом наступает момент переделок... то же самое. Я еще долго могу расписывать, включая то что любая деятельность групповая жрет денег больше чем индивидуальная... и так далее.

В результате заказчик пожирает времени фирмы-подрядчика со всеми независящими накрутками вагон и маленькую тележку - и времени именно этих манагеров. Так что рассказы про то что «манагеров надо содержать» - так их по этому и надо содержать, что заказчик мудак тупой. Это самое время же сам и проедает. Единичный же хороший заказчик страдает от толпы мудаков своего вида - как христос за все человечество.

В случае софта это все на порядки хуже и вообще е***ный песец, так как там еще и ТЗ реально нужно. То есть время на всю эту хуергу возрастает на порядки.

PS

А себестоимость визитки, условно, полкило баксов - а килобакс, а то и полтора :D Компенсируется это тем что

а) манагеры - тупые девки на выданье в значительной степени, их предки содержат. Можно платить не из расчета выживания.

б) программеро-админы традиционно должны жрать доширак и сдохнуть, это даже не обсуждается - консенсус такой :D

в) юлят с зарплатами, кидают, не платят налоги и так далее и томуподобное.

kernel ★★☆
()
Ответ на: комментарий от Xenesz

Итог: архитектуры не продумываются, потому что заказчики онанисты и мозготрахи :)

Это вы неправильно суммировали :D

Архитектуры не продумываются потому что мало манагеров :D Нет целой прослойки между конченными заказчиками и фирмами разработчиками.

kernel ★★☆
()
Ответ на: комментарий от kernel

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

Баян наверное:

Сдаю работу заказчику. Заказчик удовлетворенно кивает, со всем
соглашается:
-- Ну, вроде бы все принято!
-- Отлично, с вас 1500.
Заказчик, отдавая деньги: «Я надеюсь, если потом нужно будет переправить, можно обратиться? Это ведь не так, что один раз сделали и забыли?»
-- Разумеется, в зависимости от того, что и как нужно будет исправить.
-- Ну конечно! Я не скажу «Давайте все переделаем»!
-- Не вопрос. Кстати, еще один момент. Можно и мне потом, если у меня вдруг кончатся деньги или возникнут новые планы, я обращусь к вам насчет немного доплатить? Это мелочь, мне требуется очень редко, думаю, вас не затруднит.
--???
-- Да вы не переживайте! Я же не подойду к вам, мол, заплатите мне еще раз!

r ★★★★★
()
Ответ на: комментарий от shimon

Но и лохом быть не надо:) Количество кидал прямо пропорционально количеству лохов их ареале обитания.

r ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.