Результатов: 471

356

Со слов друга

Знакомый программист из Штатов когда-то давно рассказывал. Может, он и сочинял, но очень уж похоже на правду. В то время он жил в Израиле и работал в небольшой программерской конторе. Как-то хозяин той лавки спросил у сотрудников:
- Кто-нибудь говорит по-немецки?
В ответ тишина...
- Ок. Переформулирую вопрос. Кто-нибудь знает что-нибудь по-немецки? Завтра к нам прилетают потенциальные заказчики из Германии. Им, наверное, будет приятно, если кто-нибудь из нашей фирмы скажет им что-нибудь по-немецки.

Тут мой знакомый и сказал:
- Ну я разные немецкие слова знаю.
- Ну-ка, скажи!
- Гитлер капут! Фюрер. Штурмбанфюрер. Зондеркоманда. Хенде хох! Газенваген...
- Стоп! Ты завтра выходной!!
- Но я еще много немецких слов знаю.
- Ты что, не слышал? Ты! Завтра!! Выходной!!!

358

Приходит программист в магазин. Там продавщица - полная такая тетёнька. Программист, несколько оглядевшись: - Бутылку пива и пачку презервативов... Продавщица: - Это ты девушку охмурить бутылкой пива собрался? Вино надо дорогое покупать! Программист, отрешённо: - Да нет... Пиво я выпью, когда она уйдёт...

359

Как избежать штрафов

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

К сожалению, произошло прямо противоположное. Когда его номер попал в базу данных, система связала номерной знак NULL с его адресом. А потом она отправила ему ВСЕ остальные штрафные квитанции, у которых не было реального номерного знака. Общая стоимость штрафов составила $12 049.

360

БУТЫЛКА

Мой Нью-Йоркский приятель Миша - математик по жизни, программист по нужде. Точнее, эксперт в разработке ПО на языке java. Как большинство математиков, он несколько выпадает из мейнстрима. Поэтому теряет работу чаще обычного. Теряет и находит, ничего вроде бы особенного. Но рассказы Миши о собеседованиях, предшествующих получению работы, запоминаются надолго. Вот последний из них, примерно трехлетней давности.

«Прихожу, - рассказывал Миша, - а там сидит некто в яркой гавайской рубашке и с невероятно раздутым самомнением. Произносит слова, как будто во рту горячая картошка. Плюс ко всему, издевательски вежливый.
- Если не возражаете, - говорит, - я вам предложу задачку.
Не знаю почему, но такая злость меня взяла.
- Хорошо, - говорю, - только, когда решу, я тоже предложу вам задачку.
У него глаза на лоб полезли, но, почему не знаю, согласился. Десять минут я делал вид, что думаю над задачей, хотя знал решение, не дочитав условия. А думал я о том, что деньги заканчиваются. Поэтому дал ему задачку примерно той же сложности. Он решил, чуть от гордости не лопнул. Через два дня перезвонил. Предложил работать исключительно на удаленке. Уже неделю тружусь. Платить могли бы больше, но я не против, так как на работу больше трех часов в день не уходит. Как только начнутся морозы, уеду к сестре во Флориду».

С тех пор Миша так и работает на удаленке: зимой – во Флориде, летом - у другой сестры в Вермонте, а остальное время – в своем пригородном доме. Работой доволен. Если и жалуется, только иногда и только на некомпетентность начальника.

Но хватит о Мише. Пора и о себе любимом. Гуляю я намедни в местном ботаническом саду. Лепота необыкновенная. После двухмесячного карантина просто дух захватывает. Жена цветочки фотографирует, а я на камень присел. Смотрю, мимо идет человек в такой яркой гавайской рубашке, в каких только туристы ходят. Он что-то спросил, я что-то ответил, разговорились, одним словом.
- Вы русский? – спрашивает.
- Вы по акценту узнали?
- Ну да, у меня сотрудник русский есть. У него акцент еще покрепче вашего. Своеобразный, мягко говоря, товарищ. Я несколько лет назад искал толкового java-разработчика, никак не мог найти. А тут Indeed.com подходящее резюме выбросил. Я позвонил, пригласил познакомиться. Явился тот еще крендель. На собеседование принято приходить при полном параде, а этот в джинсах пришел. И в старых туфлях. Ладно, думаю, пообщаемся, все равно я для тебя час зарезервировал. По разговору смотрю – человек сильно странный, но совсем не глупый. Предложил ему задачку. А он: «Хорошо, только, когда решу, я тоже дам вам задачку». Такого нахальства я не встречал ни до, ни после, но мне-то терять точно нечего - согласился. Задачки были не из простых, тем не менее, справились оба. Понимаю, что у него редкий дар создавать алгоритмы, что для компании он - подарок, но как его к делу пристроить, сообразить не могу. Работать в команде у него не получится, к клиентам – вообще лучше не подпускать. Короче говоря, посадил его на удаленку и работаю с ним сам. Это, конечно, нелегко, но результатами окупается с лихвой. Тем более, что плачу ему на 20 процентов меньше за некоммуникабельность.
- Надо бы добавить, а то уведут…
- Я бы добавил, но он пока не просит…
Представились друг другу. Оказалось, что моего нового знакомого зовут Дон.
- Как вас сюда занесло, Дон?
- Из Бангкока билеты были только до Гонолулу. Я Гавайи люблю, почти каждый год прилетаю. Так что особенно не огорчился. Отсидел две недели на карантине. Погуляю по острову еще недельку и вылечу в Нью-Йорк.

В тот же вечер я позвонил Мише по Скайпу, вывел на разговор о работе, спросил, давно ли он получал прибавку.
- Ну да, - говорит Миша, - добавляют по 3% в год на инфляцию.
- А ты попытайся больше попросить, процентов 20. Ты же уже три года на них пашешь, стал ценным кадром. Намекни, что в другом месте предлагают больше. В конце концов, ты ничем не рискуешь.
- Ты думаешь, стоит попробовать?
- Обязательно! Скажи, что увлекся чем-нибудь дорогостоящим: игрой в гольф, например, или пилотированием самолета. Босс поймет, что деньги тебе действительно нужны, и охотнее пойдет навстречу. Если получится, с тебя бутылка.

Миша перезвонил через два дня: «Привет, с меня бутылка…» - сказал он, и в этот момент связь прервалась. А у меня в голове кликнуло, и запустилась программа анализа текущих событий. Какова вероятность, подумал я, столкнуться с Мишиным начальником в Гонолулу и войти с ним в контакт? В Нью-Йоркской агломерации живут примерно 20 миллионов. Из них в мае этого года по Гонолулу гуляли, может быть, несколько сотен, так как из-за пандемии Гавайи практически закрыты для туризма. Отсюда получается, что вероятность случайно оказаться в одном и том же месте и в одно и то же время с единственным нужным нью-йоркером так же мала, как получить удар по спине метеоритом или случайно собрать кубик Рубика. Что же из этого следует? Скорее всего, следует, что моя встреча с Доном не была случайной. Называйте это Бог, Космос, Высшие силы, но по непостижимой для смертных причине это кто-то или что-то решило восстановить справедливость в отношении Мишиной зарплаты и выбрало меня быть в этой миссии посредником. А я, вместо того чтобы оценить скупую элегантность постановки и поблагодарить за хорошую роль, пошлейшим образом выцыганил себе бутылку…

Снова зазвонил Скайп, снова на мониторе появился Миша:
- Извини, Wi-Fi барахлит. Да, все получилось! Попросил 20 процентов, дали 15. Совсем неплохо. С меня бутылка. Могу заказать онлайн.

Давным-давно, прочитав книжку «Математики шутят», я сделал для себя вывод, что с математиками лучше не шутить. Но в этот раз не удержался.
- Миша, бутылка — это интересно, но еще интереснее, что сегодня мне приснился сон, что называется, в руку. В цветущем саду я встретил незнакомого человека. Оказалось, что это твой босс. О чем-то мы разговаривали. Проснулся и все забыл. Осталось только, что пожилой, редкие светлые волосы и имя Дон. Похоже?
Миша задумался, но всего на несколько секунд:
- Да, моего начальника зовут Дональд. Если тебе больше нравится Дон, можно и так. Да, немолодой и блондин с редкими волосами. Но тебе, естественно, он присниться не мог, потому что ты его не знаешь. Тебе приснился Дональд Трамп, изображение которого нам навязывают с утра до вечера. Сон есть сон. Во сне он мог быть не президентом США, а моим начальником. Не смотри на ночь телевизор. Это вредно.

Хотите знать, что я почувствовал? Примерно то же, что чувствует ребенок, когда у него отобрали любимую игрушку. Разреветься я, увы, не мог. Поэтому попросил Мишу выслать бутылку моего любимого рома и стал собираться на пляж.

Бонус: короткая видео-прогулка по ботаническому саду в кратере потухшего вулкана и мой любимый ром при нажатии на «Источник».

361

В одном небольшом российском городке жил был мэр. Имел связи "в центре" и правил жестко, но справедливо. Большая часть бизнеса была под ним, но зарплаты платил вовремя и рыночные, больница и поликлиники были оснащены современным оборудованием, да и вообще мужиком он был хорошим и народ свой любил. Ну, разве что кроме тех, кто пытался "подняться" вне его контроля. С этими был тираном и узурпатором.
В один прекрасный день к нему в гости и по совместительству на переговоры приехал мой знакомый - весьма обеспеченный столичный финансист с замашками филантропа. Гость слыл в тусовке величайшим интеллектуалом, что со стоей стороны могу подтвердить - Бродского и Галича читает наизусть бесподобно, а историю Южной Америки, к примеру, знает с древнейших времен со всеми датами. При том, что занимается торговлей газовыми и нефтяными фьючерсами. Просто хобби.
После долгих переговоров и последовавших за ними возлияний у мэра с гостем зашел спор на тему уровня подготовки преподавательского состава в лучшей школе города. Спор вышел жесткий - гость утверждал что детей тут учат полные невежи, мэр защищал своих стеной. Как итог - гость предложил провести эксперимент. Если учителя его пройдут (хотя бы половина) - за него платит мэр, если не пройдут - платит гость.
На следующий день в школе устраивают педсовет, с которого поочередно учителей заводят в кабинет, где сидят мэр и гость. Суть эксперимента простая и похожа на игру стань миллионером в упрощенном варианте:
каждому педагогу задается 3 вопроса на глубокое знание преподаваемого предмета (разумеется, вне рамок школьной программы), 1 правильный ответ - 500 евро, 2- 2000 евро, 3 ответа - 5 000 евро (для города это годовая зарплата полностью загруженного учителя). Иногда вопросы с вариантами. Участвовали все включая директора школы.
Пример вопроса для учителя литературы: Назовите дату первого издания романа Пастернака "Доктор Живаго" или страну, в которой он был издан. (К сожалению, ответ был неудачным)
Итоги - мэр проиграл, 70% не ответило ни на один вопрос, и только пара человек на 2 вопроса. НО! Один молодой препод (программирование) ответил на все 3 вопроса. На следующий день мэр набрал гостю (тот уже уехал в столицу) и рассказал, что программист разделил полученные деньги на всех учителей, чтобы не было зависти. В итоге они с гостем решили тайно выдать ему ещё 5000. Хороший человек, далеко пойдет.

362

- С вас 283 рубля. Завернуть? - А? Нет, не надо, просто в пакет положите... Один вопрос - гарантия есть? - Простите, а для какого случая гарантия? - Ну, если не прочитается? - То есть как? - Ну несовместимость требований, например... Брак там, туда-сюда... - Вся прогрессивная молодежь в курсе, что обычно сначала туда-сюда, а потом брак. В худшем случае... Не прочитается... А, я понял - вы по профессии, как бы это сказать, минимум продвинутый пользователь? - Да, я программист. Но как вы догадались? - Молодой человек, будь на моем месте Шерлок Холмс, он бы сказал - по очкам, грязным джинсам, торчащему из кармана рюкзака винчестеру, трем бутылкам пива в руках и клавиатуре под мышкой. Но я не он.... И все намного проще. Это бумажная книга, она обязательно прочтется!

363

xxx: Если у меня душа лежит к медицине, ИТ, балету, архитектуре, проектированию машин, ветеринарнии или бурению нефтяных скважин, какой из меня нахер солдат?

yyy: Военврач, военный программист, военный инженер-строитель, мехвод, военврач-ветеринар, офицер трубопроводных войск. С балетом сложнее.

366

Просто мысли....
Мы задумывались, куда все идет и чем может закончиться текущий кризис, не только в России, но и в мире, и пришли к выводу, что есть достаточно простой и оригинальный выход, который в значительной степени очистит органы власти и увеличит ее КПД. Смысл заключается всего в двух нововведениях.
1. Возможность гражданина высказывать недоверие члену правительства, путем электронного бессрочного голосования. Когда количество голосов против министра достигает определенного процента, он снимается с должность, без права в дальнейшем, занимать руководящие посты в государственных органах. Данная мера будет стимулировать оных работать и работать хорошо.
2. Возможность гражданина накладывать «вето» на любой законопроект, путем бессрочного электронного голосования. Когда количество голосов против законопроекта достигает определенного процента, законопроект признается недействительным. Это поможет избежать законодательных актов, которые работают не в пользу населения.
Как данная система может работать. Голосование проходит через мобильное приложение или сайт Госуслуги и имеет открытый API, по каждому городу и региону. Каждый участник может наблюдать онлайн за результатами голосований и рейтингами членов правительства. Данные подсчитываются не на каком либо секретном сервере, а потом объявлен третьими лицами, наоборот, все данные и итоги всегда доступны в открытом виде, и доступны для подсчета абсолютно всем. Также всегда можно изменить свое решение, пока результат не достигнет «критического процента» и будет применен.
Больше в структуре власти ничего менять не нужно, это будет тригерром новой «электронной демократии», где закон будет работать на благо граждан.
Как программист, могу с уверенностью сказать, что данная система легко реализуема и не требует больших затрат.

367

Не анекдот вовсе...
Меняли нам как-то банковские карточки на работе, ну и передо мной стоял в очереди наш программист... И вот дошла до него очередь, сотрудник банка подводит его к банкомату, отворачивается и говорит: - Введите Ваш ПИН код!
- А я его не помню! - отвечает программист ему.
- А как долго не помните?
- Ну года два!
- А как же Вы деньги снимаете?
- Так я их и не снимаю!
- А в магазинах как же? Там ведь больше 1000 рублей без пин-кода в день потратить нельзя!
- Так я столько в день и не трачу!
... Мы все просто ржали в очереди!!!!

368

QA: Я кажется успешно сломал нашего ведущего разработчика %)
QA: Добавил на главную тестового сайта ">); 864: Error connect to mySQL"
QA: Программист как выяснилось искал ошибку час, пока не догадался посмотреть текст записи в базе.
QA: Смешно и грустно одновременно :-)

371

Я по жизни - раздолбай жуткий. Нет, правда: читаю невнимательно, забываю, что только что услышал или узнал, путаю все подряд. Куча проблем из-за этого, но вот однажды этот мой недостаток мне немножко помог.

Я тогда только переехал в Оттаву из Москвы, и пытался устроится на работу, желательно по специальности. И вот приходит мне долгожданный ответ на одно из сотен посланных резюме: приглашаем, пишут, вас на интервью в компанию Нортел. В то время это была чуть ли не самая крупная и успешная телекоммуникационная компания в Канаде, работать там было моей мечтой. В России-то я много чем занимался в области IT, но, так уж сложилось, в последние пару лет перед эмиграцией специализировался на компьютерных сетях.

В общем, прихожу в назначенное время по указанному адресу, даже почти не опоздал и не перепутал адрес, как бывало. А там - небольшой зал с компьютерами. Усаживают меня перед одним из них, и говорят: сейчас вы будете проходить тест на интеллект. Столько-то вопросов за столько-то минут, ваша задача - ответить на максимальное число. Ну ладно, запустили программу - а там текста куча. С языком-то у меня, врать не буду, тогда было не шибко. Как смог, прочитал это все по диагонали - там описание теста, правила и прочеее - а в правом нижнем углу кнопочка Дальше. Ну я ее нажал - открывается еще один экран, снова много текста и опять внизу кнопочка. Никаких вопросов нигде не видно. Этот кусок я уже читал через предложение, поскорее хотелось добраться до основной части... В общем, таких экранов там было штук пять, а может больше. В конце, понятное дело, я уже просто нажимал Дальше не читая. И вот жму в очередной раз - появляется сообщение "Тест завершен". Я подзываю местного служителя, говорю: а где вопросы-то? Он: пойдемте со мной. Выводят меня, жмут руку и говорят: к сожалению, вы не прошли этот этап. Там на одном из экранов, в середине, была инструкция, что сделать, чтобы запустить вопросы - и только после этого надо было нажать Дальше. А вы ее не заметили. Но, говорит, не переживайте, половина кандидатов на этом сыплются.

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

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

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

А Нортел тот в 2009-м году обанкротился: топ-шишки евойные заигрались в раздувание стоимости акций через фиктивные операции, их на этом поймали. Технологии свои они продали - а людей просто вышвырнули на улицу.

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

Вот так вот.

372

Сидит программист в столовой, обедает, суп ест. В очках такой, задумчивый, программу думает. Народу никого, все уже поели, ушли.

Подходит к нему официантка и заигрывает:

– Если Вы хотите хорошо провести время, то меня зовут Маша!

Программист медленно возвращается на землю и смотрит на официантку отрешенным взглядом и на автопилоте спрашивает:

– А если не хочу, то как Вас зовут?!

– А если не хочешь, то меня никак не зовут!

– Епт… ну точно! Переменную же обнулить надо…

374

Программист приходит в церковь... Час стоит, другой стоит... Поворачивается к распятию: - Господи, ну как мне с тобой поговорить? Я ни слова в их сленге не понимаю! Раздается раскат грома и на него падает библия. Поперек обложки большими красными буквами написано: RTFM!

375

- Как-то сотрудница, из бухгалтерии, распечатывала на принтере 50 абсолютно чистых листов. На вопрос "ЗАЧЕМ?! " она ответила, что ей нужно 50 листов и она не хочет их считать вручную. - Если бы это сделал программист, это считалось бы лайфхаком!

376

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

Табак для кальяна Ветер Северный:
Табак д/к Ветер Северный Авторитетный Ананас, 25г
Табак д/к Ветер Северный Блатной Грейпфрут, 25г
Табак д/к Ветер Северный Блэк Джекфрут, 25г
Табак д/к Ветер Северный Босяцское Яблоко, 25г
Табак д/к Ветер Северный Взлетный Лайм, 25г
Табак д/к Ветер Северный Вишневая девятка, 25г
Табак д/к Ветер Северный Волчья Ягода, 25г
Табак д/к Ветер Северный Воровская Облепиха, 25г
Табак д/к Ветер Северный Киви от Гиви, 25г
Табак д/к Ветер Северный Красная Смородина, 25г
Табак д/к Ветер Северный Кучерявый Персик, 25г
Табак д/к Ветер Северный Малина в законе, 25г
Табак д/к Ветер Северный Манго освобожденный, 25г
Табак д/к Ветер Северный Мастевая Дыня, 25г
Табак д/к Ветер Северный Пиковый Виноград, 25г
Табак д/к Ветер Северный Семигуавщина, 25г
Табак д/к Ветер Северный Смотрящий Гранат, 25г
Табак д/к Ветер Северный Черная Смородина, 25г
Табак д/к Ветер Северный Черничный Четверг, 25г
Табак д/к Ветер Северный Черный Арбуз, 25г

377

С вас 283 рубля. Завернуть? А? Нет, не надо, просто в пакет положите... Один вопрос гарантия есть? Простите, а для какого случая гарантия? Ну, если не прочитается? То есть как? Ну несовместимость требований, например... Брак там, туда-сюда... Вся прогрессивная молодежь в курсе, что обычно сначала туда-сюда, а потом брак. В худшем случае... Не прочитается... А, я понял вы по профессии, как бы это сказать, минимум продвинутый пользователь? Да, я программист. Но как вы догадались? Молодой человек, будь на моем месте Шерлок Холмс, он бы сказал по очкам, грязным джинсам, торчащему из кармана рюкзака винчестеру, трем бутылкам пива в руках и клавиатуре под мышкой. Но я не он.... И все намного проще. Это бумажная книга, она обязательно прочтется. anekdotov.net

380

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

386

В 2011 году рядовой немецкий программист Штефан Томас, проживающий в Сан-Франциско, получил небольшой заказ сделать обзорный видеоматериал о криптовалютах. За этот заказ ему перевели 7002 биткоина, причём цена одного биткоина составляла примерно $ 2-6 на тот момент. Штефан сделал электронный кошелёк, создал пароль, сохранил кошелёк на жёстком диске и... больше никогда к нему не возвращался.
В декабре 2020 года цена биткоина перевалила за $ 30 000 и суммарное содержимое кошелька стало равняться $ 220 миллионам. И вот тут выяснилось, что Штефан за прошедшии почти 10 лет совершенно забыл свой пароль к кошельку. От слова "совсем".
Кошелёк разрешает сделать максимум 10 запросов по паролю. Если ни одна из попыток не завершится успешно, то кошелёк никогда не будет открыт. На данный момент (январь 2021 года) Штефан сделал уже 8 безуспешных попуток. У него осталось только две.

388

С одного старого совещания.

Начальник (всё более распаляясь): Да! Мы сделали это! Вот такие-то пробовали - и у них ничего не вышло! Вот сякие-то хотели - и хрен на палочке! А мы так раз! Бац! И всё сделали!

Программист (который это сделал, меланхолично): Да вы вообще большие молодцы, как я погляжу.

389

Программист общается с человеком:
- Во прогресс! Пять лет назад сидел на "Синклере", теперь сижу на
Пентиуме, а что будет еще через пять лет? Просто фигею!
- А что будет? Пересядешь ты через пять лет еще на какую-то фигню.
Только когда будешь пересаживаться, посмотри в зеркало на свою задницу, на отпечатки клавиш. Вот тогда офигеешь!

391

Периодически встречаются на этом сайте истории про «совковый менталитет» - как правило, в негативном ключе. А я хочу про него написать с другой точки зрения.
Прибегала ко мне туточки сотрудница одна из соседнего отдела с просьбой: «Напиши мне отчетик, точно такой же, как этот, но другой — по другим документам». Терпеть не могу такие просьбы. Поначалу вроде бы всё понятно, но когда начинаешь вдаваться в детали, то возникают вопросы. И по каждому такому вопросу приходится бегать к просителю и уточнять. Хоть и один этаж, но неприятно. И непонятно, почему это я должна бегать.
Встретилась в коридоре с начальницей дамы-просительницы и выяснила, что само начальство того отдела пока не решило, как должен выглядеть этот отчёт и какие данные туда пойдут. То есть техзадание не сформировано.
Кстати, нас в ВУЗе учили (в 90-е годы): «Пока нет техзадания, код не пишем! Потому что всё равно переписывать придётся.» Опыт показал, что так оно и есть. Когда я в небольшой фирме работала, такие матерные слова, как «техзадание», не употреблялись, но зато хотя бы договоры составлялись. А если работать «без бумажки», то есть опасность, что ты угробишь большее или меньшее количество времени на программу, а клиент скажет «да нам, в общем-то, не особо и нужно; а здесь вы не такие данные использовали, а тут вообще по-другому должно считаться, а на выходе таблица должна быть не такая, а этакая; и вообще платить не будем». Ну, это лирика…
Поэтому раньше на заводе с советского времени была принята практика: представители отдела-заказчика садились рядом с программистами и, споря до хрипоты, писали ТЗ. Заказчик хотел побольше детализации, исполнитель хотел поменьше работы, в итоге приходили к консенсусу, как любил говаривать М.С.Горбачёв. А сейчас рулят «эффективные менеджеры» нового поколения. Один из них мне «написал ТЗ». Что-то с чем-то. «В связи с новым курсом развития нашего завода...» бла-бла-бла «...написать программу по учету...» бла-бла-бла ТАБЛИЦА. Всё. Читается как курсовик студента — без какой-либо конкретики. Какие данные использовать, откуда их брать, что с ними делать и куда отправлять — тайна за семью печатями. Понятно, что в итоге программист опять-таки плюхает к заказчику и выбивает из него признание, где брать конкретные данные и как их обрабатывать.
Кстати, я больше люблю работать с людьми, получившими ещё советское образование и воспитание — у них душа горит за дело. Кроме того, они лучше владеют информацией. Они не рявкают мне в ответ: «Вы программист, Вы сами должны знать.» Что я должна знать? Что нужно конкретному человеку? Так я не телепат. Самые классные и интересные, хоть и сложные, задачи мы решали с дамами-начальницами предпенсионного возраста. Мы сидели рядышком и думали, как реализовать то или это, спорили — и на выходе получали удобную для пользователя программу. Почему-то более молодые сотрудники (не все, правда) уверены, что программист владеет телепатией и легко догадается, что именно нужно написать.
Поэтому, когда здесь, на сайте, костерят «совковый менталитет», мне порой становится грустно. Потому что плохо сделать могут и сейчас. И делают. А встреченные мною на заводе (да, кстати, и в прежней фирме) люди предпенсионного и пенсионного возраста работают на совесть.

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

393

Про дифференциальную диагностику. Программист у нас пропал. Лет пять работал по договору. Жили мирно и дружно, не подводил. А тут исчез: на телефон и письма не отвечает. Ладно, сам исчез - с ним пароли и явки, которые наше начальство не считало нужным у себя иметь. Работа сначала притормозилась, потом встала. Нашли домашний телефон, дозвонились до кого-то из родни.
-что случилось, где наш замечательный....?
-в больнице, телефон дома, мы его на беззвучку поставили, а то звонит беспрерывно!
-в какой больнице, что произошло, чем помочь? (не то, чтобы переживаем, надо узнать, где он и пароли получить)
-ой, все так серьезно, слов нет!
-ковид?
-хуже!!!
-онкология?
-ой, нет, лучше!
-травма?
-хуже, при травме говорить бы мог!
Прямо «горячо-холодно»...даже интересно стало. Где это он и без телефона?
Нашли «третьих лиц», которые сообщили, что в наркологии наш программист. Действительно, ковид лучше!

394

Небольшая зарисовка на тему разницы мышления программистов и схемотехников:
На работе, в комнате приёма пищи стоят кулеры с водой. Сегодня утром вода кончилась, и я наблюдал следующую картину: к кулеру подходит программист с пустой кружкой, видит, что бутылки на кулере нет, разворачивается, и уходит. Через несколько минут - та же история еще с одним программистом. Потом - еще. А еще через несколько минут к кулеру подходит схемотехник. Видит, что бутылки нет, тыкается кружкой в кулер, и спокойно набирает из него воды. Ибо в самом кулере есть "буфер" примерно на 1.5-2 литра.

Мораль: логический ноль - это далеко не то же самое, что истинное отсутствие потенциала.

395

Почитал истории о том, к чему приводили плохо протестированные программы, и вспомнил свою. На фоне взорвавшихся АЭС и разбившихся самолетов ерунда, но для меня, поверьте, это была катастрофа.

Середина 80-х, времена, когда вычислительные машины были большими, принтеры назывались АЦПУ, а программы писались на русском ассемблере и хранились на перфокартах. Мне, молодому специалисту, поручили первое в жизни задание: автоматизировать печать справок о размере зарплаты. Сложность состояла в том, что фамилия-имя-отчество в справке должны были печататься в дательном падеже: выдана Иванову Петру Демидовичу. Нормальный человек просто набил бы еще одну колоду перфокарт с именами в нужной форме. Но я же крутой программист, выпускник московского вуза. Я придумал алгоритм.

Я написал программу, склоняющую имя в зависимости от последней буквы. Скажем, последнее «А» всегда меняется на «Е»: Анна – Анне, Никита – Никите. «Я» меняется на «И»: Виктория – Виктории, «Й» – на «Ю»: Сергей – Сергею. Чуть сложнее вышло с мягким знаком, Игорь – Игорю и Любовь – Любови склоняются по-разному, но я научился определять пол по последней букве отчества. А к именам, кончающимся на согласную, просто добавляется «У»: Петр – Петру, Иван – Ивану.

Никакого QA тогда не было, сам провел тестирование, то есть распечатал несколько пробных справок. Программу внедрили, она за пару часов напечатала кипу справок на всё предприятие, бухгалтера не могли нарадоваться: я избавил их от нескольких дней сидения за пишущей машинкой.

И тут, пока я мысленно вертел в пиджаке дырку для ордена, меня вызывает начальник ВЦ. У него в кабинете сидит зам. директора, и оба тычут мне свои справки. На них написано: «выдана Малинину Павелу Михайловичу» и «выдана Гунько Леву Яковлевичу».

Программу, я, конечно, исправил за полчаса. Но премию не получил и самомнения сильно поубавилось.

398

Программист - спец по компьютерным играм попадает в АД. Через 3 дня Дьявол звонит Богу и слезно умоляет: - Слыш, забери этого програмёра к себе, пожалуйста. Бог в недоумении: - Почему? - Да, ёлы, всех чертей вилами переколол и уже два дня бегает, ищет выход на следующий уровень.