Читать «Bash IT Happens Истории ## 10001 – 11000» онлайн - страница 5

Bash.org.ru IT

И тут до меня медленно доходит. Прошлый раз тоже было КЗ. Только тогда пакетник я включил сразу, а сейчас — ещё минут несколько думал, почему закорачивает-то. Выбило пробки — выключился роутер. Выключился роутер — упала сессия RDesktop из Киева в Бостон. Упала сессия RDesktop — упал сам десктоп. Упал десктоп — упала и сессия RAssistance.

То бишь КЗ в холодильнике в киевской квартире выбивает сессию Remote Assistance между двумя соседними офисами в Бостоне.

А КЗ было идиотское, в проводе питания. Так его, заразу, хитро пробило, что омметр со своими 1,5 В честно показывал 700 Ом от компрессора (а если отсоединить — так и полный неконтакт), а вот 220 уже хватало, чтобы пробить изоляцию и устроить КЗ.

#10013: Скан без перерывов на обед

12:15 15.10.2012, IT happens

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

И тут начинается самое развесёлое. Юзвери PDF знают, но думают, что этот самый формат берётся только при сканировании из их МФУ, а спросить не догадываются. И что они делают? Распечатывают повторно две тонны макулатуры и сканируют в формат, что запросили сверху. Всего за неделю без выходных управились.

#10014: Суп из спагетти

12:15 15.10.2012, IT happens

Мне по работе доводится программировать на множестве языков, и некоторые вещи меня, так сказать, удивляют.

Гляжу в код PHP с постоянными переключениями PHP-HTML вроде:

<IMG src="<?php echo $data['source'];?>" height=150 <?php if ($data['width100']) echo "width=100%"; ?> >

Читается плохо. И вдруг меня осеняет: это же как слушать речь, пересыпанную матюками! «Картинка, б****, из е**** файла, высота 150 ****, и растянуть, на ***, на всю е***** страницу, ***!»

Тоже самое с SQL. Вездусущие конкатенации и экранирование кавычек, да и ещё без пробелов:

UPDATE '.$data['table'].' SET '.$data['field'].'=\''.$data['value'].'\' WHERE $where

Перевожу: «Мне, пожалуйста, дайте помидоров, ну, кило, думаю, два, может, два с половиной, и ещё давайте, наверное, огурцов — нет, лучше капусты, скорее всего, один кочан, ну там, чтобы это, поменьше, и ещё, знаете, вчера по телику, говорили, что — ах да! — ещё картошки...»

В своих проектах я давно от этого избавился, сделав подсистему функций и классов наподобие sql_update($table, $data, $where). Потратил полдня, сэкономил недели. Но глядя в чужой код, не перестаю удивляться: охота вам, кодерам, ходить по граблям, поедая кактусы? Ведь случайная кавычка или точка выливается в часы отладки, чтобы найти в вашем супе из спагетти муху. Или не хватает ума мыслить выше плоского стандартного кода? Вот этим и отличаются программисты от кодеров.