Есть у меня компьютерный стол с дополнительной полочкой над системником и выше уровня монитора. Очень удобно ставить системный блок на тестирование, тем более что как раз к левой стороне есть доступ. Как выяснилось, такое удобство может выйти боком.
Потребовалось мне у очередного пациента переподключить кабели. Сдвинул я его чуть вперёд и в сторону — а он, падла, возьми и соскользни! Угол ящика выбил кусок матрицы из широкого монитора-двадцатки.
Остальная часть матрицы работает идеально до сих пор. Вот так в моём мировосприятии появилась новая трактовка термина «битые пиксели».
Приобрёл я как-то магнитолу в машину — с рук, не новую, но недорого. Работала она исправно и радовала слух. Но случилась страшное: каждое утро она стала отключаться и усиленно молчать. Перезагрузка помогала только на полминуты, не больше. «Ну всё, — подумал я, — надо новый майфун». И как-то неловко перед женой, что лоханулся, купил с рук, а не новый, а он сломался. И, гадина, ломается, именно когда она в машину садится, без неё работает исправно. И тут до меня дошло…
«Ну-ка, — говорю, — дай-ка телефон твой посмотреть». Так и есть: кто-то оставил включённым блютус, он подключался к магнитоле, а так как музыку на телефоне никто не включал, она и молчала.
Вот такой вот эффект присутствия.
Уютное кафе. Парень и девушка о чем-то оживлённо спорят. У неё Lumia, у него Galaxy. Аргументы кончились, он достаёт из загашника ещё один:
— Вот я могу на нем эмулятор Спектрума запускать, а ты не можешь!
— Это я-то не могу? Во, смотри!
Продолжать холивар было бессмысленно — она оказалась такой же спектрумисткой, как и он.
Вот так в свои тридцать с лишним лет Спектрум продолжает объединять такие разные сердца. А их сыну уже год.
Несколько лет назад работал я сисадмином в крупной сети компьютерных магазинов. Всё было серьёзно: был отдел сисадминов, отдел внедрения и сопровождения 1С и отдел разработки, которые писали и вели интернет-магазин.
И вот как-то приходит к нам начальник отдела разработки и говорит:
— Ребята, можете помочь? У меня с базой проблема.
— Не вопрос, в чём дело?
— Да постоянно обращается к базе какой-то левый айпишник. Можете пробить, кто это?
— Давай адрес.
— 127.0.0.1.
Со мной случился проект внедрения фронт-офиса. А вместе с ним поставщик решения — Землесофт. Землесофт — это хуже внезапной диареи посреди танцпола на концерте рок-звезды и страшнее зверожука с Трааля.
Была у Землесофта система. Она была как правильнописание Винни-Пуха: хорошая, но хромала. Такой себе инвалид третьей группы, но с разрешением на работу. Система фронт-офисом никогда не была, да и сейчас она всё ещё не он.
В отличие от программистов, менеджеры у Землесофта хорошие. Они приехали к заказчику, предложили хорошую цену (всё-таки кое-что надо было допилить), рассказали о космических кораблях, бороздящих просторы Большого театра, и понеслась.
В процессе допиливания инвалид третьей группы стал инвалидом второй, заразился полиомиелитом, ему сломали обе ноги и руку. Проект разбился на этапы, этапы — на спринты, спринты — на задачи, и выяснилось великое. Первый этап: инвалид с одной рабочей рукой (доработанной, но чуть-чуть не допиленной функциональностью) не обладает свойствами, необходимыми для реализации второго этапа. Нужна операция на сердце (повышение версии ядра), и будет счастье. Казалось бы, ну да, нужно. Повышаем — получаем инвалида с новым ядром, поломанной рукой, поломанными ногами, долечиваем его так, чтобы он хотя бы мог передвигаться, и наконец-то запускаем в эксплуатацию после года-то пыток этот проклятый первый этап фронт-офиса.
Второй этап продолжаем доделывать, чтобы когда-нибудь в туманном будущем… Но заказчику уже сто процентов пора что-то давать. И что? И ничего — Землесофт не ищет лёгких путей. С инвалида сделали клон, ядро ему заменили, но на какое-то не релизное. Рабочую руку сломали — функциональность первого этапа во втором инвалиде не работает, правда, как и функциональность второго, потому что второго ещё нет.
И вот стоит заказчик и затравленно оглядывает двух инвалидов, которых по уму легче и гуманнее было бы пристрелить. Но бодрая «команда» проекта Землесофта надежды не теряет. У них по-прежнему есть упаковка лейкопластыря, аскорбинка, полтора неких программиста, которые пишут некий код для неких объектов.
Надежду стала терять команда заказчика. Заказчик отчётливо осознает, что Боливар не вынесет двоих, и настоятельно просит выбрать какого-то из двух инвалидов. Отчаявшись донести свою мысль до команды Землесофта — им оба инвалида дороги как родные дети, — заказчик обращается к руководству Землесофта. Руководство кивает, со всем почти соглашается и говорит:
— Слушайте, а если мы докажем, что первый инвалид отлично ходит, можно мы оставим обоих?
«Твою мать», — думает про себя заказчик и вежливо спрашивает:
— Но такой подход всё равно приведёт к тому, что первый инвалид будет заменён вторым?
— Да.
— И замена эта будет нелёгкой, это будет второе полномасштабное внедрение, а мы ещё не закончили это?
— Ну что вы, у второго рано или поздно мы руки починим, вы почти не заметите никакой разницы. Ну, раньше контролы были слева, теперь справа, чё там такого? Ну, функциональность всю ещё раз оттестируете, ну, системные возможности проверите, мы даже обещаем логировать операции удаления данных. И вообще, вы видели, как Microsoft изуродовал Office?
— Видели, — соглашается заказчик. — Именно поэтому оставляем одного инвалида, и именно того, кого познакомим с пользователями.
И что, вы думаете, ответил Землесофт?
— Мы к вам лично приедем и объясним, что два инвалида лучше, чем один. А первый вообще не инвалид!
Бодрая команда Землесофта после этого разговора стала ещё бодрее. У них есть три дня, чтобы первый инвалид со сломанными ногами побежал, но он пока не бежит, иногда подпрыгивает, но всё больше бьётся в конвульсиях в надежде сдохнуть своей смертью. А мы ждём заморских гостей.
Смысл образования семьи на биологическом уровне очевиден — появление и поддержка потомства до того момента, когда оно само сможет о себе позаботиться, — однако в случае человека с его переполненной иллюзиями и рефлексией спецификой социальной жизни, эта базовая функция обрастает весьма запутанной вязью морально-этических и ценностных неоднозначностей, в которых люди теряются, делая схожие по однобокости логические построения, и с завидным постоянством на протяжении многих поколений сталкиваются с одим и тем же набором проблем во взаимоотношениях. Попробуем, вопреки естественному желанию искать ответ на более простой вопрос «как», озадачиться вопросом «зачем».
Читать дальше →
Занимаюсь поддержкой и доработкой модуля CRM биллинговой системы. По функциональности очень жирный модуль: около 200 визуальных форм, по сути, одно из основных рабочих мест биллинговой системы.
Разработка начиналась около 15 лет назад на средстве разработке, столь популярном тогда на территории экс-СССР, названном в честь древнегреческого города. Тогда это был передовой край IT — визуальное средство позволяло быстро и качественно рисовать пользовательский интерфейс. А архитектура этого средства позволяла дорабатывать стандартные компоненты и классы, разрабатывать свои собственные или использовать сторонние, что повышало качество и привлекательность создаваемого программного продукта.
В отличии от маститых конкурентов, имевших тяжкий груз наследия старого кода, разрабатывали уже трёхзвенную архитектуру, чем немало гордились. Вот, мол, у них надо драйвера базы ставить (драйвера Оracle поставить и настроить — это довольно муторно, если рабочих мест за сотню с лишним), кому-то ещё фреймворк для работы клиента, а у нас тонкий клиент: создал ярлык на экзешник с файл-сервера, и уже всё работает. Конкуренты апеллировали, что клиентские места надо создавать в средствах разработки, которые заточены для работы с БД и прям со структуры базы сами рисуют пользовательский интерфейс (страшный и кривой, зато возиться не надо), а не на вашем комбайне, на котором только утилитки десктопные строгать.
Прошло пяток лет, и тонким клиентом стал считаться веб-браузер. В те годы они, конечно, мало что умели и годились для ввода пары строчек в простейшей форме редактирования или отображения не слишком большой таблицы (какие сортировки/фильтрации/группировки — забудьте!). Конкуренты, вышедшие на рынок после нас, потешались над нами за отсталость технологий, мы над ними — за убогость интерфейса.
И вот развитие веб-технологий позволяет нарисовать интерфейс, неотличимый от нативного, а средства разработки позволяют нарисовать его комфортно. Вот только браузер с открытой почтой, новостным сайтом и этой страничкой ест оперативы столько же, сколько сервер приложений с полутысячей активных пользователей, и в пять раз больше клиента, в котором загружен список под сотню тысяч записей (раз клиент хочет себя мучить такими списками, то проще сделать, чем спорить).
Да, у нас разрабатываются небольшие специализированные рабочие места на веб-технологиях (зачастую с бо́льшими трудозатратами, чем потребовались бы для реализации того же на древнем, но удобном средстве разработки), но переписывать огромный продукт, понимая при этом, что это не только потребует совсем других ресурсов и от сервера приложений, и от клиентских мест, но ещё и ограничит функциональность… Мы это время лучше потратим на развитие системы, а я своё свободное рабочее время — на изучение фич новой версии БД, название которой некоторым образом ассоциируется с описанной средой разработки. Всё-таки основная моя специализация — разработка БД.
К чему это я? Да все к тому же баяну, повторяемому тут на каждой странице: холивар вечен и повторяется на каждом витке развития технологий. А каждой технологии своё место и своё применение.
существует точка зрения, что Ева была создана не из ребра Адама, а из бакулюма. Поэтому эта кость отсутствует у человека.
Почему-то подумалось, что вот в такие дни и начинаются мировые войны.
Всем, кто в субботу с утра пораньше, вместо того, чтоб пить кофе на балконе в Париже, спать сладким сном в своей или чужой постели или заниматься йогой на пляже в Гоа, сидит перед компьютером или нот-буком, — утреннее приветствие! И пусть суббота удастся лучше, чем пятница.