Истории с тегом: программизмы

Всего историй: 896

4299

Образ мысли и образ жизни

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

Я считаю, что компьютерщик — это не профессия; это, если хотите, образ мысли. Примерно как гуманитарий или технарь. Только компьютерщик будет копаться в программах, когда есть возможность поиграть. Только компьютерщик будет разбирать сложную вещь, для разбора не предназначенную, только из интереса: «А как она работает?» И самое интересное, что после того, как он соберёт вещь обратно, она не сломается и не сгорит.

Я считаю, что отличительная черта истинных компьютерщиков — удивительная логичность. Они чувствуют фальшь и ошибочность на интуитивном уровне, причём во всех областях. Если начальник приказывает что-то сделать только потому, что у него зачесалась правая пятка, компьютерщик это почувствует и делать не будет до ответа на вопрос: «А зачем?»

Компьютерщик — ещё и образ жизни. Он делает все важные вещи рационально, с минимальной затратой ресурсов, если знает, как. А вот с неважными вещами позволяет себе поступить так, как интереснее.

Почему я говорю именно про образ мысли и образ жизни? Когда-то я выходила замуж за компьютерщика. Была счастлива. Но когда муж стал IT-директором — изменился. Поведение, рассуждения, устремления... Развелись мы потому, что перестали понимать друг друга. Он стал управленцем. А я осталась компьютерщиком — и горжусь этим.

4289

Другого и не ожидал

Первый раз программирую на VBA. Естественно, ошибки на каждом шагу — злюсь. Под конец компилятор выдал:

Compile Error

Expected: )

Это меня добило. Он мне, блин, ещё и улыбается!

4287

Просто песня

С точки зрения Налогового Кодекса РФ программный код приравнивается к произведениям литературы. И верно, а почему бы и нет?

if (newGame) resources.free();

s = FILENAME + 3;

setLocation(); load(s);

loadDialog.process();

try { setGamerColor(RED); }

catch(Exception e) { reset(); }

while (notReady) { objects.make();

if (resourceNotFound) break; }

byte result; // сменить на int!

music();

System.out.print("");

Смысл довольно туманный — как и полагается стихам.

4277

Вот откуда уши торчат

Я был когда-то странной константой безымянной,

Такой, что в длинном коде никто и не найдёт.

Теперь я — итератор, и каждый компилятор

При встрече сразу вектор выдаёт.

Мне не везло сначала, и даже так бывало:

Во время компиляций — ошибок целый лист!

Теперь я в Си-плюс-плюсе, на Линуса молюсь я,

Он самый лучший в мире программист!

4243

Исключив случайный фактор

Если уж все пошли вспоминать своих институтских преподов, то вспомню и я. Первый же день моей учёбы в универе был омрачён парой по информатике (или как её там), где женщина солидного возраста объясняла поточной аудитории, что в течении двух семестров мы будем изучать с ней язык программирования Turbo (тут она сверилась с бумажкой) Basic. Тут мой здравый смысл ушёл на покой, разбудив во мне подросткового быдлокодера, который выучил C++ по книжке и ещё в школе писал всем зачётные-выпускные по информатике — двумерные аркады с подробными комментариями, которые потом были дисквалифицированы за единый стиль. «Бейсик — не язык, а обучающая программа. Для высшего образования это слишком слабо! Да он проходится за неделю! Он не соответствует современным концепциям!»

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

— Мне надо! Я пойду пиво пить. Не то чтобы мне не нравился предмет — мне он очень нравится, — просто то, что вы рассказываете, это бред. Он делает меня только глупее, так что я не вижу смысла в своем присутствии на ваших лекциях.

— Встретимся на экзамене, — тихо ответила женщина.

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

В день экзамена я зашёл в кабинет с опозданием на час и с порога затребовал задание на «отлично», на что закономерно получил ответ: «Сначала посмотрим, знаешь ли ты хотя бы на тройку». Предлагалось написать программу на бумажке. Не проблема: «Эту задачу можно решить так, но в соответствии с концепцией структурированного программирования... А с точки зрения процессорного времени...» Задание на пятёрку я таки получил и написал код в тетрадь — короткий, оптимизированный, а не тот, которому она учила.

— Садись за компьютер, набирай программу. Если заработает — «отлично». У тебя полчаса.

— Мне хватит пяти минут.

Методом десятипальцевого слепого копипаста я набрал код и запихнул его в менюшку: все задания в одной проге. Всё оформил, проверяю. С примером из задания — ОК. С «введите вручную» — ОК. С значениями из генератора случайных чисел, в том числе знакопеременными — неправильный результат! Я покрываюсь холодным потом: время заканчивается... Убираю из менюшки вариант со случайными числами.

— Всё готово. Проверяйте.

— Результаты сошлись?

— М-м-м... Да!

— Ну, не мне вас проверять. Пять.

Ошибку я нашёл позже. На потоке пятёрки получили всего несколько человек: я и моя «группа».

* * *

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

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

4238

ПТУшная логика

Сейчас я программлю на 1С, но во времена студенчества работал на Delphi и C++. Денег у студента нету, зато есть куча людей, у которых они есть, и они готовы ими делиться ради написанных программ. Брался я с охотой, делал максимально хорошо. Проблем с заданиями не возникало, тем более если они были толково составлены преподом.

В пору сессий «подфартило» мне взяться за задачи каких то ПТУшников. Профит ожидался небольшой, но студенту три задачи по 40 рублей, помноженные на 40 человек в группе ПТУ, могли только сниться. Естественно, меры предосторожности я принял, сперва взявшись за задачи лишь одного человека. Полчаса — и две готовы, а взглянув на третью, я понял, что задания надо читать сразу. Не буду приводить точный текст, но требовалось написать программу, которая парсит и вычисляет логические выражения.

Была убита неделя. За другие задачи я даже браться не хотел после этого. Добило то, что человек платить отказался: программа «не работала», то бишь он не смог объяснить преподавателю, что происходило на экране.

Прошло много времени, но калымить желания так и не появилось. Лёгких денег не бывает.

4233

Всем на пол — это дебаг!

На работе два разработчика на повышенных тонах обсуждают настройки отображения в рабочей программе:

— Чтобы всё заработало, надо просто Альфа-Банк грохнуть — и всё!

— И давай грохнем наконец, чего раздумывать?

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

4227

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

4217

На костях предков

Было это, когда я учился в универе. Идёт защита лаб по спецухе «программирование на языках высокого уровня». Показываю свою программу на Дельфи. Препод, всей душой меня недолюбливая, начинает придираться ко всему, потом успокаивается и контрольный вопрос задаёт. «Напиши вот такую дополнительную функцию», — и ехидно улыбается.

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

Сажусь на приём через час. Открываю, она тыкает — всё работает.

— Ну, у кого содрал?

— Сам написал.

— Код покажи.

Вот этот момент я не забуду: отодвигаю окно программы, и препод видит код в одну строку. Зачётку подписывала, истерично хохоча.

4216

Видна рука поэта

Убедили препода, что прога всё-таки работает? Значит, препод был хоть минимально вменяем. Я стал отказывать в просьбах написать программку для зачёта после многодневной попытки помочь сдать зачёт по программированию студентке сельскохозяйственной академии.

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

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

Теперь на вопросы по программированию я с удовольствием поделюсь ссылками на мануалы по языкам и алгоритмам, отвечу на любые вопросы, покажу, как поправить код, и объясню, зачем и почему. Но писать ничего не буду. Увы, чтобы воспользоваться моей помощью, надо обладать базовым навыком — умением думать, что для многих становится непреодолимым барьером. Может, у кого-то есть ссылка и на этот мануал?