bash.im ithappens.me zadolba.li
8477

Засланник в жёлто-красном клане

Работаю эникейщиком. Когда работы нет, режусь в онлайн-игрулю вроде «Цивилизации».

Настаёт конец раунда, идут активные боевые действия. От игры отрывает звонок: «Ничего не работает». Подключаюсь через Радмин — и что я вижу? В окне моя же игра, вот только игрок — командир противостоящего клана.

В общем, технологию шпионажа в игру ещё не ввели, а я ей уже могу активно пользоваться. IT всегда будет побеждать бухгалтерию!

8476

Смертельная битва на костылях

Я тот самый нелюбимый быдлокодерами программист, который пишет не «2 + 2», а интерпретатор формул (благо опыт позволяет это сделать быстрее, чем некоторые кодеры напишут и отладят свой «2 + 2»). Не пишу хардкодом параметр, который «никогда-никогда не будет меняться», а сделаю настройку. Могу вместо костыля плюнуть, потратить пару часов, но переписать так, чтобы не требовалось постоянно латать.

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

Так что потом не удивляйтесь, что за хардкод путей (который запрещён), ориентацию на единственный браузер или билд DX, влезание со своими именами, повторяющими чужие в системах с глобальной видимостью объектов, наплевав на установленные правила именования, вам настучали по голове и лишили части премии.

Ещё одна особенность быдлокодеров: сделать костыль не самым простым и надёжным способом, а наиболее извращённым. Работает, естественно, лишь в некоторых случаях (которые и были протестированы), а дальше пусть тестеры разбираются. Найдут — поставим ещё костылей.

Но самое страшное — более одного быдлокодера, которые расставляют костыли в одном проекте. Тогда эти заплатки начинают драться между собой. Один затыкает дырку, заливает — рушится что-то в другом месте. Затыкает там — рушится тут или ещё где. В итоге костылей становится столько, что многоножку-инвалида легче, быстрее и дешевле пристрелить и переписать всё нормально, чем лечить.

Почему я не делаю всё сам? Физически не хватит времени писать несколько проектов, поэтому я занимаюсь наиболее приоритетными и воскрешаю смертельно больных. Опыт позволяет минут за двадцать найти и исправить баг, который до того искали полдня. Набирать код со сверхскоростью недостаточно — когда-то надо ещё и думать.

8475

Информационно-развлекательное издание

9 февраля 2012, 11:45

Ставил систему клиенту, который совершенно не смылит в компах (а купил потому, что сейчас это модно). От нечего делать добавил ему bash.org.ru в избранное.

Через месяц звонит мне этот мужик и задаёт кучу вопросов по тонкой настройке винды.

— Ты где так насобачился-то?
— Читал Башорг, если какая-то шутка непонятна — изучал вопрос.

8474

Да — да — да — нет — да

Замутили наши инженеры с дизайнерами новый интерфейс для пользовательcких страниц на сайте. Красивый, навороченный, детально настраиваемый через длинный список чекбоксов. В тот же день звонит клиент:

— У меня со страницы пропала вся моя реклама!

Лезу в настройки нового интерфейса, проматываю до страницы с настройками рекламы — все галочки стоят. Иду к одному продвинутому коллеге, к другому — все подтверждают, что галочки на месте.

Делать нечего — пишу инженерам. Ответ примерно следующий:

— Вы что, рекламщики, вообще читать разучились?! Там же напротив галочки написано: «Запретить показ рекламы». Значит, она должна быть выключена, а не включена!

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

8473

Не сгибая колена

9 февраля 2012, 10:00

Решил я почистить домашний компьютер, никогда не отключающийся. Пыли скопилось в нём — хоть свитер вяжи. Разобрал, вычистил, смазал процессор свеженькой термопастой. Включаю — чёрный экран. Начинаю проводить диагностику. Видеокарта? Нет. Оперативка? Нет. Проц? Хм, что это? Одна ножка на сокете 775 отсутствует. Вот же она — отломалась, чертовка, во время чистки.

Начинаю звонить знакомым, чтобы отвезли в магазин — получится только через полчаса. А уже шестой час, можем и не успеть к закрытию.

Ну, думаю, хуже уже не будет. Беру маленький пинцетик из набора жены, иголку и начинаю думать, что б туда поставить вместо отломанной ножки. Откусить маленький кончик иголки? Слишком толстый. Взять провод, расплести и кусочек усика воткнуть? Слабоват. Оу, вот же лежит кусок отломанной ножки. Его-то и поставим.

Для тех, кто не обращал внимания: ножка представляет собой маленькую пластинку в форме буквы «Г», чтобы при прижимании проца она подгибалась, обеспечивая большую силу соприкосновения. Ставлю в таком же положении, что и была — падает в соседнюю ножку. Хм. Выпрямляю и аккуратно втыкаю на место. Торчит выше остальных, но стоит. Скрестив пальцы, ставлю проц и жму на кнопку… Пошёл POST!

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

8472

О широком ассортименте и узкой специализации

9 февраля 2012, 10:00

Чем отличается продавец от специалиста?

Продавец должен узнать, что именно нужно клиенту. А когда узнал — попытаться убедить клиента, что именно это (ну, или почти это) он и может купить в данном магазине. Мастерство заключается в умении убедить, что клиенту нужно что-то другое. Мастер всегда виден — он продаёт то, что нужно магазину, а клиенты считают, что купили то, что нужно им. Все довольны.

Теперь специалист. Этот смотрит узко. Пытается локализовать проблему и решить. «Лишние» вопросы ему только мешают, так как отнимают время от поиска решения. Он гуру в своём деле, а если не дурак, то имеет общие знания во многих областях. Но думает он всегда узконаправленно.

Специалист разрабатывает ручку за миллионы долларов, способную писать в невесомости. Продавец предлагает купить карандаш.

Специалист пытается предложить решение, не поняв, что именно от него хотят. Он обдумывает возможное решение уже во время постановки задачи. Он сразу ставит под сомнение то, что говорит заказчик. Он стесняется уточнить, потому что его решение по определению соответствует всем условиям, которые он сам для себя и наметил. Именно поэтому узкому специалисту так сложно составить ТЗ — он видит своё решение, а не условия и границы задачи.

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

Если уж работаешь продавцом компьютерной техники, то прислушивайся к тому, что говорит клиент. Задавай правильные вопросы — и будет тебе счастье. И не используй установку многих постсоветских продавцов: «Я тут вообще временно, а так я крутой специалист. А клиент в основном — ламер полный! Вот, ещё один припёрся…»

8471

Распараллелим на троих

9 февраля 2012, 10:00

Сидим на работе в офисе всем админским составом. Пришли три новых сервера и шесть новых системников. Радость неописуемая. Всё настроили, вылизали — красота! План выполнили, делать нечего — запустили Counter-Strike, играем три на три.

Входит в кабинет начальник, видит всё это безобразие, начинает орать не своим голосом. В итоге ушёл, извиняясь. Как думаете, почему? Правильно: «Мы тестировали новые компьютерные системы в различных условиях, с различными потоками задач и различными нагрузками».

8470

Безопасность — gov.**

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

Когда же, загружая официальный документ с разработанного энтерпрайзной конторой новенького, с иголочки, сайта, абсолютно ненамеренно вытерев в адресной строке всё, кроме домен.gov.страна/files/, видишь листинг каталога веб-сервера, уже становится нехорошо.

Когда, следом заглянув в robots.txt, видишь в списке запрещённого ботам каталог популярного визивиг-редактора, к горлу подкатывает ком: «Это же крупная государственная контора, этого не может быть!»

Когда далее находишь в каталоге этого редактора веб-интерфейс плагина для загрузки файлов, не прикрытый даже банальной http-авторизацией, невольно вырывается истерический хохот: «Я могу загружать файлы? Это сон? Так не должно быть!» Но версия загрузчика настолько стара, хоть и свободна-открыта, что может благодаря уязвимостям трёхлетней давности заливать что угодно — хоть .exe, хоть .php.

Торопишься написать письмо веб-мастеру, описываешь всё в мельчайших деталях, отправляешь, ждёшь ответа — час, два, полдня, день… Ответа нет, изменений на сайте тоже. Будний день.

Минуты сомнений. Статья 361 УК? Но я же не преодолевал никаких средств защиты, их просто не было на моём пути! Потемнение разума на одно мгновение — и ты уже видишь Ubuntu на третьем ядре, не обновлённом после обнаруженной в январе уязвимости Mempodipper, установленный на сервер (sic!) KDE, энтерпрайзная БД Oracle, несколько дампов — наверное, бэкапы. Ну, хоть не совсем отсталые админы. Хотя…

В домашних каталогах админов — гигабайты видео (wget со ссылками в истории команд), музыка на любой вкус, каталог games на пятнадцать гигабайт. «Герои Голд»? Не, не играл в такое. Ничего не трогаю, ничего не удаляю, ничего не сливаю, выхожу, оставив записку на видном месте.

Письмо-ответ от вебмастера так и не пришло. Радует, что сайт таки прикрыли через несколько дней — видимо, при помощи rm -rf /*. Теперь моя совесть чиста.

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

8469

Незаменимые люди есть

9 февраля 2012, 08:00

Филиал крупной фирмы находился на территории постсоветского крупного предприятия со своими кабельными сетями и АТС — точнее, тем, что от неё осталось. На предприятии был связист, в ведении которого находилось это хозяйство. Отдел аудита как-то попытался разобраться, за что ежемесячно этому связисту платят 200 грн.

— Он что, выполняет какие-то работы?
— Нет.
— Так за что мы ему платим деньги?
— Понимаете, если ему не заплатить 200 грн, то он что-то где-то дёргает, и у нас не работает инет или работает, но очень плохо. Мы пытались с этим бороться: искали, где обрыв или плохой контакт, но не нашли. Решили, что лучше заплатить 200 грн, и пусть всё работает нормально.