Выбрать главу

Захожу в жалкое подобие серверной. Комнатуха два на два метра и пять высотой, на железной двери электронный кодовый замок с обеих сторон, а под потолком кондиционер дует на полную. На столе стоит «башенка», мониторчик 15" и клава.

Стою, молочу по клаве — и каким-то странным образом дверь закрывается.

Минут через двадцать начинаю обмерзать (кондей-то всё ещё пашет). Пытаюсь найти пульт и осознаю: не зная код от двери, не выберусь отсюда без посторонней помощи. Мобила в этом сейфе не ловит. Ну и ладно, скоро должен админ придти.

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

Вспоминаю: в соседнем помещении для торгов на стене висит плазма, подключённая к компу. Обмёрзшими руками нахожу диск с Радмином, через консольку умудряюсь закинуть сервер на ту машинку. Ура, коннект есть! Открываю Блокнот и пишу большими буквами:

ВЫПУСТИТЕ МЕНЯ

Через пять минут дверь открыл админ. Я выслушал историю о том, как во время торгов вместо объявлений и прочей информационной хрени на весь экран вдруг вылезла странная фраза. Некоторые испугались, некоторые рассмеялись, некоторые залипли, а админ в шоковом состоянии пошёл искать того, кто так жестоко балуется.

#9897: All systems go

12:15 20.09.2012, IT happens

Простудился. Вечером писал софт с юнит-тестами, потом ворочался от бессонницы. Наутро, не открывая глаз, получаю первые мысли:

Нос не заложен — тест пройден.

Голова не болит — тест пройден.

Не холодно — тест пройден.

Температуры нет — тест пройден.

Суставы не болят — тест пройден.

Активация…

#9898: Пожарьте яичницу сами

12:15 20.09.2012, IT happens

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

А у моей жены есть страсть неодолимая — чтение. Наша коллекция книг насчитывает больше 15 тысяч томов. Естественно, эти тонны текста надо каким-то образом каталогизировать. На первых порах всё решалось средствами Опен-офиса. Опенсорс, всё красиво, всё прекрасно. Но в один прекрасный момент при добавлении очередной карточки книги «мы упали». Ладно, заказчик вредничает, переводим всё в Эксель. Эксель выдержал ещё пару сотен карточек и тоже упал.

Мы приняли решение поставить специализированную программу для этого дела. Первым блином.com была бесплатная опенсорсная Calibre. Красивая и чудесная — но как, скажите меня, как можно написать простейшую программу реляционной БД с интерфейсом так, что она тормозит на двухъядерных 3 ГГц и 2 ГБ памяти? Честное слово, мои программы послеинститутской поры под досом и нетварью в 520 КБ доступной памяти обеспечивали торгово-складскую деятельность больших оптовых баз.

Ладно, проплевались на эту убогую поделку, которая очень широко рекламируется в сети, и купили коммерческую AllMyBooks. Дело пошло хорошо, мы успели вбить порядка 12 тысяч карточек. Всё было красиво, но… обновилась версия. Программа стала 3.0, Пушкин А. С. стал везде «А, С, П.», а бедный Айзек Азимов стал «Айзеком А.». Но это ещё что — оказывается, лицензия была на версию 2.х, а теперь она недействительна.

«Боже», — подумали мы и написали свою программу. Она работает, не тормозит и не требует лицензию. В базе 15 тысяч карточек, программа умеет сама лазить на сайты за информацией о книгах и не просит у нас никаких лицензий.

Ах да, о чём это я? Программу не дам. И совет: прежде чем задалбываться и крыть всех трёхэтажными словами, пожарьте яичницу сами, благо программирование не сложнее чесания котёнка за ухом.

#9899: Обфускация тирьямпампацией

12:15 20.09.2012, IT happens

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

Вот что я обнаружил в листинге своего одногруппника:

procedure TFamPapam.BamBamClick(Sender: TObject);