Истории с тегом: программы

Всего историй: 796

1587

Так рождаются пираты

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

Один из «смотрящих» поставщика неизвестно какими путями прознал об этой акции. Так как по условиям договора всю рекламную продукцию нужно согласовывать с ними, он изъявил желание узнать, откуда же всё берётся. Его завели в мою каморку, где вовсю шёл процесс тиражирования: цветной струйный принтер печатал без остановки наклейки на диски, чёрно-белый лазерник шлёпал выкройки конвертов, на двух компьютерах с четырьмя DVD-RW в каждом без остановки шёл процесс размножения дисков, а я сидел, резаком отрезал края наклеек и вручную лепил их на болванки.

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

1515

Месседжбокс. Холст, масло

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

Через некоторое время в почту приходит JPG-файл. Наши чудесные китайцы маркером перерисовали сообщение об ошибке (с границами окна и контролами) на салфетку, отсканировали и отослали нам. Распечатка в рамочке висит у нас в офисе до сих пор.

1493

Спокойствие, только спокойствие

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

На работе Супер-Срочный Заказ. Домой приезжаю только поспать, и то ненадолго — использую для работы каждую минуту. А поскольку езжу на работу на поезде (Хайфа — Тель-Авив), то работаю и там.

В тот день, как назло, села батарейка в компьютере. Но не могу же я просто так целый час в окошко смотреть! Достаю бумагу, карандаш... Схемы экранов — не код, их можно и на листочке набросать. Сижу, рисую, концепцию навигации продумываю, экраны на логические зоны делю. Вот только подспудный страх мучает: «А вдруг сотрётся? Как же это я не сохраняюсь?» И тут же одёргиваю себя: «Как не сохранится? Это же бумага!» Но всё-таки беспокойство остаётся.

Зачем против своих инстинктов идти? Дорисовал в верхнем левом углу иконку «Сохранить». Хорошо вышло, похоже. Еду дальше, работаю, периодически на дискетку пальцем жму. Правда, некоторые пассажиры с удивлением мне через плечо заглядывают. Ну и пусть заглядывают — душевное спокойствие важнее!

1455

Антилена

Был у нас в регионе небольшой сотовый оператор, где я и трудился. Ныне это филиал большого и гордого предприятия.

Занимался я там многими вещами, но любимой «игрушкой» был находящийся в подчинении SMS-центр. Больших программ я никогда не писал — работа была несколько иная, но вот мелких скриптов я настрочил массу. Про один из них и хочу рассказать.

Два-три десятка строк на перле и вуаля — пользователи интернета могут отправлять SMS друзьям и родственникам с нашего сайта (не более 10 в сутки с одного IP). Написал, запустил и забыл. Через несколько месяцев начали поступать жалобы на спам в наш колл-центр. Абонентов донимала некая Лена, которая просила закинуть ей на номер 300 рублей.

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

Сел наблюдать. Лена опять отправила сообщения нашим абонентам с просьбами помочь материально. На месте барышне не сиделось — SMS были отправлены с тридцати разных IP-адресов. На следующий день ситуация повторилась. На третий тоже. На четвёртый Лена, видимо, включила телефон, чтобы посмотреть на улов, и получила несколько сотен входящих.

Несколько дней была тишина, но где-то через неделю напасть началась снова — немного поменялся текст сообщения. Мой скрипт был начеку — он способен был разобрать символы «0», «I», «Б» вместо нуля, единицы и шестерки в номере телефона, не говоря уже о подмене русских букв латинскими аналогами. Леночка сопротивлялась недолго и вскоре ушла искать счастья на сайтах других операторов, о чем я узнал из сообщений на их форумах.

Война окончена. Враг посрамлён, абоненты успокоились, мы довольны.

1432

80x25

В школьные годы я частенько участвовал в холиварах «FAR против Total Commander». Мне всегда больше нравился FAR, но у «Тотала» тоже было довольно много сторонников. В конечном счете оказалось, что без плагинов пользоваться невозможно ни тем, ни другим, а многие плагины совместимы. Получается, что в общем-то разницы никакой, а дело сводится к разнице в GUI. Однако произошел-таки один случай, в котором FAR мне помог, а сторонники «Тотала» спасовали.

Дело было во времена Windows 98. Как-то раз, объясняя знакомому, как настраивается разрешение, я поставил такие параметры, которые мой монитор заведомо не выдерживал, и нажал кнопку «Применить»:

— Смотри, если ты что-то сделаешь не так, то через 10 секунд...

Ни через 10 секунд, ни через минуту картинка не появилась. Я нажал Reset, надеясь, что настройки висят где-нибудь в памяти. Комп загрузился, но разрешение осталось неизменным — экран продожал издевательски показывать табличку «No signal». Я перезагрузился в безопасный режим — 640х480, обратно — всё как раньше.

Решение проблемы нашлось само собой. Как наиболее часто запускаемое приложение, FAR висел на хоткее. Жму комбинацию, открывается окошко. Правда, я этого не вижу, но какое мне дело до такой мелочи? Alt+Enter, и файл-менеджер переходит в полноэкранный режим, в котором разрешение от настроек системы не зависит. Я нашел файл с описанием реестра, открыл его по F3, нашел нужный ключик, скопировал параметр, закрыл редактор, открыл плагин для правки реестра, внёс изменения и запустил перезагрузку, после которой все заработало.

Вот так-то! «Тотал» ваш переходить в полноэкранный режим не умеет.

1418

Улыбайтесь — это всех раздражает

Работаю в компании, разрабатывающей ПО для восстановления баз данных. Запускали мы новый продукт. После очередной крупной сборки отослали копию московскому начальству — посмотреть и попробовать. Через пару часов приходит ответ:

Запустил программу. GUI простой и понятный, всё нормально. Взял три базы, попробовал восстановить. На двух программа просто завалилась, на третьей выдала message box с таким текстом (скриншот прилагаю):

Shit happens. Keep smiling!!!

Не знаю, что и думать...

В тот день разработчики надолго остались на работе.

1404

Учиться — так с музыкой

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

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

Мучился ровно полдня. Перекопал весь установочный диск, WAV-файлов не нашёл. Тут меня осенило! Сунул наушники в разъем; вуаля — установщик тут же всё оформил в лучшем виде.

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

1400

С белой строки

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

Наконец настал момент долгожданной сдачи проекта. Заказчику программа понравилось, и все разбежались довольными. Через некоторое время вызывают: «Не работает, и всё тут».

Приезжаем, смотрим. Сбились поля. Текст должен быть посередине, а на деле съезжает вправо. Долго думали, что могло повлиять на это. Перерыли весь код — не нашли ничего. Решили проверить в режиме дебага, что может вызывать такие неполадки — всё работает как швейцарские часы. Ступор. Совершенное непонимание. Проверяем несколько раз, ответ очевиден: программа исправна.

Едем на место и просим показать, как сотрудники заполняют формы. Результат не заставил себя долго ждать: девушка-секретарь, стуча ногтями по пробелу, вручную сдвигала текст на середину экранного поля. Понятно, что при печати текст выравнивался по середине с учётом пробелов. Интересуемся у дамочки:

— Зачем вы это делаете? Ведь в инструкции написано, что при печати текст будет отформатирован автоматически.

— Инструкция — это вредная бумажка, которую читают законченные ламеры!

1371

Альтернативная лингвистика

Хуже дурака только дурак с инициативой. Пришёл в кабинет решать проблемы с принтером. Пока я ковырялся в недрах машинки, сидевшая рядом девушка спросила меня, почему ворд подчёркивает некоторые слова волнистой линией.

Объясняю, что бывают слова, о которых программа не слышала, и их надо добавлять в словарь вручную. Через некоторое время приглядываюсь — девушка печатает с потрясающим количеством грамматических ошибок ( про пунктуацию вообще молчу). Ворд изо всех сил подчёркивает ошибки, но девушка упрямо и настойчиво кликает на каждом слове «Добавить в словарь».

1369

Гармонический ряд грызунов

Проводил я инвентаризацию ИТ-хозяйства в конторе. Для учёта составил экселевскую табличку, в которую вбивал наименования всех матценностей вместе с их инвентарными номерами. Процесс трудоёмкий — очередь запаса мышек подошла только ближе к ночи. Закончились разнообразные модели Logitech, и я добрался до Genius. Их у нас была только одна разновидность, так что я один раз вбил название NetScroll PS/2 и, растянув на нужное количество полей, отправился спать домой.

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

Мышь Genius NetScroll PS/2

Мышь Genius NetScroll PS/3

Мышь Genius NetScroll PS/4

Мышь Genius NetScroll PS/5

...и так далее до дюжины с хвостиком.