Идея была простой и гениальной. Большинство очков «ГазМяс» терял, лидируя в конце матча с разницей в одну шайбу и пропуская гол за несколько секунд до конца встречи. Соответственно, если как-нибудь уменьшить время игры, то и вероятность неблагоприятного исхода была бы меньше. Помимо судьи-хронометриста, контрольный секундомер которого благополучно пылился в ящике стола, единственным источником точного времени было пресловутое табло. Идея Саши заключалась в следующем: модифицировать табло так, что если «ГазМяс» ведёт, то смена секунд происходила бы не через одну секунду реального времени, а приблизительно через 0,9 секунды. Разница для человеческого глаза во время игры практически незаметная, но для игры — довольно критическая.
В программу было внесено следующее условие:
for (i=0; i<2; i++) { // Мы не знаем, в каком порядке команды будут на табло
if (startswith(lower(team[i]), "газмяс") { // Пусть мелочь из «ГазМяса-2» тоже порадуется
teamindex = i;
}
}
if (score[teamindex] > score[1 - teamindex]) {
quantifier = 0.9;
} else {
quantifier = 1;
}
Изменения были успешно протестированы на второй команде. Наступил день рождения уважаемого тренера, по совпадению ставший и днём очередного матча «ГазМяса». Саша, предвкушая радость дяди Васи вечером, отправился сдавать последний экзамен сессии. Только вот препод попался на редкость въедливый, и освободиться брату удалось только часов в восемь, аккурат к окончанию третьего периода. В нетерпении он зашёл на трибуну и обомлел. «ГазМяс» проигрывал одну шайбу, до конца игры оставалось десять секунд. Вбрасывание, пас назад, к левому борту, в центр, бросок… Шайба вошла в ворота соперника «ГазМяса» на мгновение позже сирены. Судья покачал головой и развёл руки в стороны, показывая, что взятие ворот засчитано не будет. Сашка посмотрел на табло. Местный «ГазМяс» встречался с «ГазМясом» из другого города. Украденной десятой доли секунды не хватило до ничьей.
К счастью, о произошедшем никто не узнал, а на турнирном положении «ГазМяса» потеря двух очков так в итоге и не отразилась. Мой брат живёт и работает сейчас в Штатах, пишет программы для микроконтроллеров, которые использует NASA в своих спутниках.
#5784: Ну-ка мечи файлы на стол
15:45 24.03.2011, IT happens
На днях потребовалось создать общий ресурс у сервера местного клиента и удалённого пользователя из другого региона. Как положено: у сервера белый IP, учётки созданы. Но у удалённого пользователя не вышло подключить к себе сетевой диск сервера, поэтому решили подключить к серверу диск C: клиента. Все процедуры выполнены, проверяем работу:
— Открывайте в терминале «Мой компьютер».
— Открыла.
— Есть ли там в списке сетевых дисков ваш диск C:?
— Не-е-ет, нету. Но есть какой-то диск C: на «Крейзи».
— Это не ваш ли?
— Не знаю.
— Откройте этот диск, посмотрите, ваши ли папки с файлами там лежат?
— Нет, знакомого ничего нет.
Ладно, выходим из сеанса. Смотрим имя удалённого компьютера — Crazy.
— Это же ваш компьютер!
— Ну не знаю, молодой человек, вот если б вы мне его рабочий стол показали — я бы сразу узнала!
#5785: И носом крутит
19:45 24.03.2011, IT happens
Есть у меня квартира просторная, сервер на лоджии и, естественно, кот. Куда же без кота? Одним прекрасным летним днём примерно в десять вечера я решил посмотреть фильм и лечь спать. Ушёл готовить попкорн, а пока ходил, открыл балконную дверь — жарковато стало. Прихожу, сажусь на диван, пульт от телевизора в руки, сеть, и…
И сервера в сети нет. Проверяю с компа — не видится. Разгадка, как всегда, очевидна: кот вышел на лоджию остыть, а так как он там ещё ни разу не был, стал всё обнюхивать, в том числе и сервер. Своим носом котяра выкрутил оба реобаса на минимум. Естественно, такой режим работы предполагался только зимой, и сервер, нагревшись до 120 градусов, успешно выключился.
#5786: Задницей с разворота
12:00 25.03.2011, IT happens
Делаю систему управления самоходной тележкой, самостоятельно объезжающей препятствия. Спереди два независимых ведущих колеса, сзади болтается поворотное. Прокосячил в алгоритме объезда: скорость поворота задаётся в радианах в секунду, а я вписал константу в градусах, как оно на мониторе отображается. Косяк всплыл при обкатке на малых скоростях. Выглядело это так: тележка неспешно подъехала к коробке, изображающей препятствие, резко крутанувшись на 360 градусов, снесла задницей коробку с дороги, после чего поехала дальше. Не хватало только возгласа: «Понаставили тут фигни!»
#5787: Chaotic/Lawful
12:00 25.03.2011, IT happens
Ставим систему наблюдения на удалённом объекте.
Утро. Генеральный директор объекта:
— Если вы сделаете нам всё так, чтобы никто ничего незаметно не мог стащить, приезжайте к нам в любое время года и отдыхайте хоть всей фирмой.
Вечер. Старший смены охраны объекта: