11511

Кнопконажиматели на ЭВМ

Внесу свою лепту в ругань на «уверенных пользователей ПК». Именно такая запись есть в резюме у таких людей, а под ней — перечисление множества программ, про которые они что-то когда-то слышали, но вряд ли видели живьём.

Таких людей я называю «операторами ЭВМ». Нет, не потому, что испытываю презрение к этой профессии. А потому, что часто они не обладают даже теми навыками, которые дают на краткосрочных курсах этих самых операторов.

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

Надо сделать ЭЦП для организации, чтобы участвовать в торгах? В словосочетании есть слово «электронная»! Значит, в АСУ. И ничего, что это работа для юристов компании.

— У меня не печатает (не открывается, не сохраняется)!

Но при этом принтер мигает лампочкой замятия бумаги или бумаги там и вовсе нет — кончилась. В трее висит восклицательный знак, что устройство (флешка, которую воткнули в хаб, где уже стоит четыре устройства) определено неверно. Файл пытаются сохранить на один из слотов кардридера, в котором пусто… Такие перлы каждый день. И что интересно, никто не делает выводов из ошибок: покивают головой, вроде как понятно, но вскоре снова то же самое.

Увещевания купить (да вы только скажите — я вам в интернете найду и скачаю бесплатно) самоучитель по работе с операционкой, пакетом программ или отраслевым софтом сразу же нарываются на бурю негодования: вот ещё, делать нечего! По версии операторов ЭВМ в проблеме всегда виноваты плохой компьютер, какое-то устройство, непонятная программа или компьютерщики, которые не удосужились всё настроить и объяснить (хотя на самом деле и комп, и софт работают как часы, а перед запуском в работу пользователю было показано, что и как делать). Никогда оператор ЭВМ не признает свой низкий уровень квалификации.

Что ж это выходит? Работать буду я, а зарплату, да ещё и поболее моей, получать — вы? Нет, так не интересно. Давайте лучше вот как: или вы действительно начинаете браться за голову и изучать то, что приносит вам деньги, ваш рабочий инструмент, или я пишу служебку о профессиональном несоответствии и несу её руководству. Вы же написали, что являетесь уверенным пользователем ПК? Так будьте им!

11510

Дебаг копипастой

Блок try/catch не даёт информации?

Есть у меня программа, которую пишу и обновляю с 2006 года до сего момента. Программа эта используется многими людьми ежедневно по много раз. И вот однажды мне надоело отлавливать баги, а главное, с трудом вытягивать информацию с описанием ошибок у пользователей, которые в силу специфики программы обычно являются домохозяйками.

Я сделал обработку всех исключений в программе так, чтобы перед пользователем появлялось окно с кнопками «Продолжить работу» и «Отправить отчёт автору». В простом поле был текст из стека ошибки — полный, длинный, иногда на несколько страниц. Сверху написано: «Нажать на кнопку „Отправить отчёт автору“ и в теле письма нажать Ctrl+V». То есть нет встроенной отправки отчёта на почту, реализация самая простая, используется почтовый клиент системы (если он есть, конечно). А обработка вывода такого окна при любом исключении довольно проста.

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

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

11509

Огрызок и ошмёток

Под мак программирую. Для кого-то такой комп — мечта, а для меня — проклятие. Самые свежие модификации яблочного железа и софта привозят мне прямо со старта продаж в Штатах, и начинаются мои мучения. Но это неинтересно. Одно скажу: редко что на новых версиях OS X из старого софта заработает сразу. А это пот, кровь и мои слёзы.

Как-то раз пришлось трое суток без перекура переделывать практически готовый к выпуску продукт из-за того, что вышла новая версия OS X, и на ней по доброй традиции ничего не заработало. К концу третьих суток на меня нашло озарение. Эпловский логотип помните? Ну, надкушенное яблоко. Сверху не листик! Это яблоко надкусили да кусок откушенный сплюнули.

11508

Доверяй, не проверяй

Выучить кнопки в среде программирования — это ещё не программист. Я бы даже сказал, совсем не программист.

Видел работу одного такого. Задача была проста: учёт неважно чего и на выходе стандартная оборотка: остаток на начало периода, приход, расход, остаток на конец. Он сделал вводную форму по форме выходной. То есть выдавалась эта оборотка, и пользователю предлагалось, когда происходила операция прихода, вписать число в колонку прихода на соответствующей строчке, а если там уже есть число, то сложить на калькуляторе эти два числа и вписать сумму в ту же строчку прихода. В начале следующего периода данные не сохранялись, остатки не переносились, а предлагалось руками обнулить таблицу и перенести «остатки на конец периода» в колонку «остатки на начало периода».

Это не ошибка в программировании. У разработчика хватило образования создать базу под эту задачу, написать программу и в ней сделать форму. Это дичайшее непонимание информационных технологий в принципе.

Вопреки очевидному, я всё же попытался указать программисту на его ошибки. Я даже опустил вопрос, зачем вообще такая программа, которая ничем не помогает пользователю. Я задал другие. Как просмотреть, из чего состоит сумма прихода? Если вдруг ошибка, как её найти? Как сделать оборотку за больший период? Не достучался… Разработчик не видел проблемы в своём творении. А когда дальше встала задача сделать другой документ из этих же данных, он сделал ещё одну табличку под ручной ввод.

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

Это те самые пользователи, многие из которых уже лет десять упорно проверяют на калькуляторе, правильно ли компьютер посчитал в столбик, хотя я уже им во всех интонациях и со всеми типами эмоций говорил: «Компьютер при складывании в столбик не ошибётся, проверяйте те данные, что вы внесли». Те пользователи, которым не лень пересмотреть сотни, а то и тысячи строчек в поиске ошибки, но тяжело пользоваться одной кнопкой выборки, в которой будет не больше десяти строк.

Так что цепочка «„узкий“ преподаватель — „узкий“ программист — „узкий“ пользователь», похоже, живёт своей, непонятной нам жизнью. Достаточно трудно наладить связи с этим миром.

11507

Песнь Меди и Олова

Андрей Олегович — завхоз и начальник предпродажной подготовки в одном большом поставщике POS/Horeca. Работает тут уже лет пятнадцать — дольше, чем генеральный директор, старший инженер и главный конструктор вместе взятые. У Андрея Олеговича зрение минус восемь и идеальный слух.

Шью чип для терминала. Мимо проходит Андрей Олегович.

— Миша, щас запорешь чип.

— Да? А что не так?

— Режим не выбран, там должен дроссель маленький пищать. О, вот теперь пищит, хорошо, продолжай.

Клиент привёз терминал на обслуживание.

— Плохое питание, выключи.

— А тут-то в чём дело?

— При запуске звяка не было, вместо защиты какая-то ерунда стоит.

Вскрываем питание — и правда, кусок фольги вместо предохранителя.

Сижу, ничего не делаю.

— Чего ты сидишь, лодырь?!

— Нет, я работаю.

— Ты когда мышкой по экрану водишь, у тебя колонки чуть шуршат, а сейчас тихо.

И самое прекрасное. Обедаем в столовой, Андрей Олегович протирает свои огромные очки и так спокойно:

— Сейчас мигнёт свет.

Свет мигает и загорается снова.

— Сейчас прибежит Тамара.

Через три секунды в дверь врывается секретарша и оповещает всех, что у неё внезапно пропал интернет и телефон.

— Тамара, проверь снова, пожалуйста, у тебя всё работает.

Секретарша уходит.

— По ходу, в щитке предохранитель щёлкнул, вот у Томы и рубануло роутер. Сейчас Авая пискнула — есть связь.

Щиток — этажом ниже в закрытом железном шкафу. Авая — через коридор и три двери.

Андрей Олегович раньше работал на шаговой АТС. Говорит, на глаз их бесполезно было чинить, только на слух.

11506

Язык месяца — теперь с квадратными скобочками

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

Хочу искренне поблагодарить тех кто преподавал и преподаёт в моей альма-матер. Меня там учили не просто писать на C/C++ или Delphi. В первую очередь меня учили думать, «как программист», то есть логически. Нам ставили задачу, и проверяющим было всё равно, как она исполнена. Их волновало только то, правильно ли работает программа и насколько быстро выполняется. Каждую программу преподаватели тестировали и старались найти ошибки, чтобы мы их исправляли. И теперь, чтобы освоить другой язык программирования, я потрачу время только на изучение структуры и операторов. Никогда не мог понять «специалистов», хорошо пишущих на одном языке, при этом неспособных переключиться на другой. У меня возникает мысль, что не на ту специальность они пошли.

Нет, нет, вы не подумайте: я не великий мастер, познающий все языки программирования за десять секунд. Чаще всего написанный мной код могу разобрать только я ввиду его замудрённости. Скорее всего, при виде этого кода будут вспоминаться труды индийских коллег… Но я всегда готов его упростить, если меня осенит, как это сделать, а до тех пор он будет работать таким, какой есть, при этом выполняя своё назначение без нареканий.

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

11505

По подъезду бродит призрак Марио

Когда я был ребёнком, все мои сверстники мечтали о приставке «Денди» либо имели оную. И только в моем подъезде, блин, никто о ней не мечтал.

Кто помнит, чтобы воткнуть приставку в телевизор, надо сначала вытащить кабель антенны. Можно упростить манипуляции, если вместе с приставкой идёт переключатель. Но нашлось в подъезде одно чудо, чьи родители сначала купили приставку без переключателя, а потом нашли гениальный, с их точки зрения, способ не перетыкать кабели и не портить драгоценный ламповый чёрно-белый «гроб»: антенну воткнули в гнездо 1:1, а приставку — в гнездо 1:10 (опять же, кто помнит, там аттенюатор для тех, кому посчастливилось жить очень близко к передатчику).

Только родители чуда не учли, что сигнал приставки через этот аттенюатор после ослабления в 10 раз попадал прямиком в гнездо 1:1, а через него — в разветвитель в щитке. А дальше — в остальные разветвители всего подъезда. И никто из детей не упускал возможности вместо мультиков, новостей и «Джентльмен-шоу» настроить свои «гробы» — цветные, чёрно-белые, у кого какие были — на тот же канал и посмотреть сражение вышеупомянутого чуда в «Марио», «танчики», «Контру», «Утиную охоту» и что там ещё было. Пусть с хорошим таким «снегом» из-за ослабления аттенюатором и разветвителями, но посмотреть.

Играло чудо не много, а очень много. Потому что делало уроки не поздно вечером, после игры, а сразу после школы, перед ней. Чётко и быстро. Умело ведь! А ещё оно гулять не очень-то любило, а из-за него — и остальные дети подъезда. Ежу понятно, что собственная приставка в таких условиях становится не очень-то нужна. А мальчишке из другой истории, который делает уроки под прохождения игр на Ютюбе, — респект.

11504

О пользе диетического кода

В последнее время тут муссируется тема внедрения новых разработок, которые дюже охочи до системных ресурсов. Когда свежеустановленная Win8 после первой пачки обновлений грузилась минут пятнадцать, а потом сказала, что на 60-гиговом SSD (думал, под систему с антивирем хватит, остальное на другие диски) свободно всего 830 мегов, глаза у меня стали очень выразительные… Да, после отключения гибернации и свопа жить стало можно, но 37 гигов под голую ось?.. В общем, сговор софтовиков с железячниками на разорение народа для апгрейдов так и не отменили. Жаль.

Квартал назад принимал работу у старой закалки программера. Задачка была: на веб-фейсе (пока ещё не существующем) вывести данные о продажах и вкратце о происходящем по торговым точкам. Четыре профиля, каждый с одной кнопкой «Показать результат за выбранный промежуток времени», разница в колонках и их содержимом. Получил от программера 14 файлов общим весом 68 КБ, скормил Апачу. Теперь каждый (да, пусть только из Хрома, но это оговаривалось в ТЗ; мобильная версия учтена) может быстро окинуть взглядом происходящее за 30 секунд из любой… в общем, даже из того места, где со связью очень плохо. Крутится серверная часть на PIII-500/256/20. Пока тестировал, поднял на этой машине 3G-свисток со статикой. Народ стучался в него. Хватало, хотя машина стоит в серверной в центре здания.

— Господа, вы прямо сейчас хотите подняться из кресел и пойти в ближайший лес (там у Мегафона есть полумёртвая зона на 70 метров, связь никакая), дабы самостоятельно проверить отчёт?

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

Коллеги по айтишному цеху! Может, хватит питаться в «Макдональдсах»? Кефир и сельдерей — полезные и даже иногда вкусные.

11503

Всего лишь мойщик окон

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

— Эта ОС здесь, как видим, уже стояла, я её не устанавливал.

Бояться контрольных заказов, конечно, надо, но не до такой же степени!

11502

Дай четыре!

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

— Доброе утро! Сделайте мне палец, пожалуйста.

— Доброе утро. А что у вас с ним?

— У меня его нет.

После этого я на пару секунд завис, перечитал первое сообщение. Перед глазами возникла кровавая картина с шредером, отрывающим конечности. И только потом я вспомнил, что сотрудника нужно прописать в штатной СКД, работающей через отпечатки пальцев…