Сейчас уже некоторые и не вспомнят, что первые компьютерные клубы появились в конце восьмидесятых — представьте зал с рядами «спектрумов», подключенных к телевизорам «Рубин». На каждом стоял механический будильник, отмерявший время «диггеров» и «арканоидов».
Затем в частном владении появились «двушки» и «трёшки», и примерно одинаковый набор игр для них носили друг другу на дискетах друзья и знакомые. К моменту появления 486-х игрушки уже продавались в специализированных магазинах, и самые крутые из них занимали аж по десятку дискет.
Кроме того, можно было зайти в такой магазин со своей пачкой флоппиков и за сходную сумму записать себе всё, что понравится и поместится. Когда только появились компакт-диски и народ ещё не воспринимал технологической пропасти между старыми и новыми носителями, случались вот такие истории:
Середина девяностых, ВВЦ, бокс по продаже компьютеров. Продавец играет в новейший 3D-шутер Creature Shock, который смотрелся по тем временам ультрасовременной диковинкой. Подходит солидно выглядящий мужчина, пару минут наблюдает за игрой, решает приобрести. Продавец предупреждает: «Эта игра на двух CD». Посетитель возмущается и требует записать игру на дискеты. Продавец повторно объясняет, что на дискетах этой игры нет и не будет. Покупатель угрожает скандалом, мотивируя отсутствием оптического привода и постулатом «клиент всегда прав».
«Хорошо, — сдаётся продавец, — несите 740 дискет и будет вам игра».
Когда я был молод и горяч, довелось мне поработать админом-эникейщиком.
Рабочий день в разгаре, я беру очередной уровень в «линейке». По законам жанра в кабинет заходит начальник — подполковник в отставке — и застаёт меня за этим недостойным занятием.
— Ты не опух ли на работе в игрушки играть? — Вроде всё работает, проблем нет, чем ещё заниматься? — Работать!
Вроде и не поспоришь, но меня вдруг пробирает:
— Знаете ли вы, за что платили врачам в древнем Китае?
Босс безмолвствует.
— За здоровых пациентов. В конце месяца каждый больной уменьшал жалованье доктора.
Я думал, что увольнение неизбежно, но в итоге получил солидную прибавку к окладу и внеплановый апгрейд рабочей машины.
В университете при проверке лабораторной работы преподаватель спрашивает студента:
— Почему нет проверки входного значения? — Да какой нормальный человек, задавая время, будет писать что-либо, кроме цифр и двоеточия — особенно, если видит надпись «Введите время в формате ЧЧ:ММ»? — Молодой человек, хороший программист должен учитывать всё! Откуда вы знаете, какой пользователь будет работать с этой программой?
Задумчивый голос откуда-то из глубин аудитории ставит точку:
— Ага, пользователь — это периферийное устройство хаотического ввода...
Занимаюсь фрилансом — разрабатываю всевозможные мелкие программы для автоматизации процессов.
Недавно писал скрипт, массово приглашающий в группу пользователей крупной социальной сети. Сроки были жесткие — три дня, и времени на тестирование не оставалось. После сдачи проекта в течении недели я исправлял найденные баги, каждый раз архивируя проект и отсылая заказчику.
На днях клиент написал о свеженайденной ошибке. В течении двух часов, пока я чинил программу, меня не покидало ощущение, что такую ошибку я уже видел. Озарило меня вовремя — в разговоре с клиентом я обронил фразу «у меня всё чаще появляется мысль, что вы запускаете старую версию программы».
Отсылаемые архивы я не пронумеровывал, и клиент по невнимательности запускал старый скрипт — назывались-то файлы так же.
Даже если программа никогда не уйдет в публичный доступ и пишется исключительно под одного человека, всегда нумеруйте версии!
Шесть лет назад я купил компьютер и тотчас же захотел завести свой сайт. Сказано — сделано: сначала это были три шаблонные странички на boom.ru, потом — сайтик на HTML на Народе, через пару месяцев я освоил скрипты и сделал более-менее приличного «хомяка».
Естественно, в какой-то момент мне захотелось выгрузить на сайт фотографии. Тут и начались проблемы.
Ни цифрового фотоаппарата, ни сканера у меня тогда не было. В доме нашлись лишь аналоговая видеокамера Hitachi с восьмимиллиметровой кассетой и видеокарточка с аналоговым входом. Фотографии в компьютер загонялись следующим образом: на стол кладётся фотография, перед столом на штативе устанавливается камера, подключенная напрямую к компьютеру, наводится резкость и нажимается клавиша «Snapshot» в PowerDirector.
Картинки получались, конечно, не слишком привлекательного вида — сегодняшние телефоны снимают с лучшим качеством. Разумеется, из снимков хотелось вытянуть всё, что можно. С фотошопом я не был знаком, так что единственным способом подкорректировать цвета и хоть немного «оживить» картинку для меня была кнопка «Автонастройка» в Microsoft Photo Editor, входящем в Office XP. Понятно, универсальная функция не всегда давала на выходе то, что мне хотелось бы видеть, да и на отпечатанных в ателье фотографиях с балансом белого было не всё здорово. Частенько я лицезрел на мониторе то красно-жёлтые оттенки на холодных зимних фотографиях, то какую-то зелень в небе.
Однако небольшой опыт работы с видеокамерой в то время у меня был, и я знал, что освещённость объекта напрямую влияет на то, как он будет выглядеть на экране телевизора. Решив поэксперементировать, я сделал для себя несколько открытий: оказывается, холодные зимние снимки «сканировать» лучше всего при освещении из окна, весенние — в свете лампы дневного света, а летние — включив настольную лампу прямо над фотографией! Фотографии неожиданно «заиграли», хотя, конечно, до снятых современной любительской цифровой камерой им было далеко.
Сегодня у меня есть и сканер, и хорошая цифровая камера, и умение за неделю слепить втрое более крепенький сайт, чем был тогда. Однако за все эти годы я так и не научился добиваться в фотошопе того, что я делал тогда, таская за собой по комнате камеру на штативе и маленькую настольную лампочку.
Вы говорите, ошибки программирования? Это всё ерунда. Незначительные недоработки, огрехи и шероховатости.
Хотите узнать, что такое настоящая ошибка?
Представьте: здоровенный автоматический погрузчик, управляемый программой, которую написали в твоём отделе, вываливает восемь с половиной тонн строительного мусора прямо перед зданием управления.
В день приезда генерального директора. На машину генерального директора. В которой мирно спал кот жены генерального директора.
Приезжаю к друзьям чинить ноутбук. Симптом — компьютер вылетает в середине процесса установки операционной системы.
Жалея о том, что не захватил с собой бубен, вставляю установочный диск и загружаюсь. Через пятнадцать минут ноутбук выключается.
Смотрю в BIOS — на процессоре можно кипятить воду! Поднимаю ноутбук и вижу аккуратно обрезанный по краям кусок мягкого коврового покрытия с длинным ворсом. Естественно, коврик закрыл все вентиляционные отверстия.
Друзья признались, что переживали за экстерьер новенького ноута и поэтому решили таким образом обезопасить его от царапин. Чрезмерная забота до добра не доводит!
Некогда я учился на пятом курсе и подрабатывал на своей кафедре. Работа была несложная — поддерживать учебные компьютерные классы в рабочем состоянии. Поскольку учебный день длился дольше восьми часов, мы с напарником работали в две смены. Парень он был неплохой — нехватка знаний с лихвой компенсировалась инициативностью.
Однажды на одном из компьютеров падает ОС. В целях повышения квалификации моего напарника именно ему начальник смены велел переустановить ОС, для чего выдал установочный диск.
Напарник три дня шаманил с машиной, не притрагиваясь к компакту. На четвёртый день я увидел работающий компьютер с полным комплектом необходимого ПО. Только я хотел похвалить своего напарника, как увидел начальника смены, стоящего рядом. Вид у него всегда серьёзный, но тут он был озадачен донельзя.
Всё выяснилось очень скоро — мой напарник в прямом смысле «переставил» ОС, сняв с соседнего компьютера жёсткий диск и вставив его в нерабочий.
С тех пор прошло три года, напарник уже стал начальником смены. То ли ещё будет.
Была у меня в девяностых подруга-журналистка — с компьютерами была знакома, но по технической части часто обращалась ко мне за помощью.
Начались жалобы — компьютер ни с того ни с сего перезагружается. Бывает, что по нескольку раз в день, бывает — неделями нормально работает. Приехал, посмотрел — всё нормально, очевидных неисправностей нет. Только руками развёл — надо наблюдать, статистики мало.
Через пару месяцев собрались мы с подругой в в кино. Сижу у неё, жду, пока она закончит статью. Вдруг подруга вскрикивает: «Ну вот! Опять перезагружается!»
Посмотрел я на неё и наконец-то всё понял. Сидеть девушка любила, закинув ногу на ногу, а когда задумывалась — машинально покачивала тапком. Конечно, носок находился на уровне кнопки Reset — тогда их ещё делали большими и легко нажимающимися.
Поделился я с подругой своими наблюдениями и задвинул системник поглубже в стол — больше компьютер не самовольничал, но полезная привычка часто сохраняться у девушки осталась.