bash.im ithappens.me zadolba.li

Образование

1750

Мои ракеты вверх

Думаю, что про прошествии пяти с лишним лет я могу поведать эту историю, случившуюся на первом курсе физфака %universityName%. Читали нам на первом семестре курс информатики — родимый паскаль, изъезженный сто раз ещё в школе (а некоторыми, в том числе вашим покорным слугой, и раньше). Лектор у нас там был весьма интересный (самый запомнившийся перл — «логические значения „труе“ и „фэлс“), но самым замечательным персонажем был «семинарист».

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

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

Не знаю, как остальные, но я за один выходной день сделал все десять программ. Вскоре в нашей группе был зачёт из двух частей: лектор задает вопросы, «семинарист» смотрит программы. Сначала я попал на лектора. С вопросами проблем не было, и через пару минут я услышал: «Давай зачётку». Как человек честный, спрашиваю: «А программы не хотите посмотреть?» Лектор поворачивается к «семинаристу» и спрашивает, есть ли у него ко мне претензии. Тот, опять не говоря ни слова, качает головой, и я получаю долгожданный зачёт.

У друга же моего всё-таки решили посмотреть программу (скопированную у меня) с расчётом полёта. В качестве начальных параметров задали бросок вертикально вверх в штиль. Исходная точка полёта у меня была в начале координат, и я её рисовал около левого края экрана. Дальше я вычислял дальность полета, рисовал точку приземления у правого края, а дальше с помощью простой пропорции переводил координаты снаряда в полёте в координаты на экране. Но при вертикальном броске тело приземлялось там же, откуда и выстреливалось!

Моя программа поставила слева точку «0», справа точку «0», а потом нарисовала замечательную кривульку, расставляя по оси абсцисс нолики возле каждой засечки. Друг меня потом чуть не убил, хотя зачёт он тоже получил.

На всю жизнь я запомнил, что 90 градусов — тоже угол.

1749

Мы не ищем лёгких путей

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

Но вот настал день сдачи этого «шедевра». В это время я спокойно спал, потому что в универ нужно было только к третьей паре. Приходит SMS: девушка забыла дома флешку и просит напомнить ей формулу, чтобы она смогла выполнить это задание прямо на паре. Я начинаю набирать в телефоне: ЕСЛИ(…

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

Кстати, вручную набранная формула оказалась правильной.

1722

Между строк

Первый курс, поточная лекция «Основы работы на ПК» (не сверялся со стандартом, но почему-то такой забавный предмет в расписании был). Народ, понятное дело, в массе своей тему знал, но преподавательница, несмотря на свои регалии, читала курс по методичке: шаг влево, шаг вправо — падение в бездну.

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

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

— Извините, вот вы говорите, что данные на дискетах записываются на дорожки...
— Да, Николай, правильно.

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

— ...и что форматирование уничтожает данные?
— Верно.
— Но откуда же мы возьмем стёртые данные?
— Ну, Николай, не знаю, это сложный вопрос.

Проснулась уже вся аудитория, ожидая победного удара от айти-гуру.

— И всё же?
— Ну, наверное, между дорожками...

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

— Записываем новую тему: «Программа выполнила недопустимую операцию и будет закрыта»...

После пяти секунд раздумий:
— Ой, что-то я не помню у Шикина такой темы.

1718

С чувством, с толком, с расстановкой

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

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

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

Первым сдавал программу мой однокурсник-отличник, учившийся на бюджетном отделении. Программа показало большое окно нежно-розового цвета с тремя полями ввода, после нажатия на кнопку «думала» примерно 40 секунд и заявила, что в ресторане для нормальной работы должно быть минус два официанта. Преподаватель поворчал, однокурсник что-то переделал и благополучно получил зачёт.

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

Во-первых, оказалось, что вычислять посетителей на каждую минуту неправильно, надо на каждую секунду. Во-вторых, надо было совершить 20 прогонов для точности. Программа чуть затормозилась, но положенный результат за 120–150 мс вычисляла. Преподаватель опять недоволен.

— Скажите, почему вы не хотите принимать работу?
— Она у вас неправильно работает.
— Почему? Вот код, если не верите результатам, посмотрите сами.
— Вот мне делать больше нечего, кроме как код ваш смотреть! Я и так знаю, что там ошибка — она слишком быстро работает. Так быть не должно, переделывайте.

Sleep(1) в цикле вычислений и прогресс-бар в отдельном окошке спасли отца русской демократии, но после получения зачёта я начал догадываться, что в этом вузе ничему хорошему меня больше не научат.

1708

Обфускация: вводный курс

На первом курсе мы занимались моделированием простеньких физических систем. Очередным заданием было смоделировать колебание маятника и получить петлю гистерезиса. Задание я выполнил за пару, все работало в моём понимании как нужно — понёс сдавать. Преподаватель посмотрел на работу программки, открыл код и, быстренько прокрутив колёсиком, заявил, что у меня не хватает зависимости от массы. Моё разочарование было настолько сильным, что я и не подумал расспросить более конкретно, о чём идет речь.

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

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

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

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

1693

Битва за гигагерцы

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

Приёмы для новичков:
— Сделать в ворде шрифт белым и орать, что не печатает;
— Выставить минимальную скорость мыши и орать, что не едет;
— Включить «залипание клавиш»;
— Выкрутить звук на минимум;
— Выдернуть провода;
— Открыв много-много окошек, взорвать компу мозг.

Приёмы для любителей:
— Убить половину процессов;
— Снести драйвера;
— Поковыряться в недрах C:\Windows.

Приёмы для профессионалов:
(мой приём) Воткнуть шнур от монитора в другой разъём, после смерти машины шнур быстро вернуть в подобающее место;
— Втихую выключать комп из розетки;
— Написать нехитрую программулину, чтобы окошки с «ошибками» заполоняли компьютер.

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

Итак, первое место и новый комп в придачу получила я с товарищем за хитрое убийство компа и невозможность его реанимировать. Второе же место получил пацан, который... выкрутил колёсико яркости монитора на минимум. Зачем я только так изгалялась?

1691

Фокусировка внимания

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

Сижу за столом перед ноутбуком, на борту которого крутится 64-битная XP. Запускаю старый добрый Borland Pascal, и винда выдает табличку: «Это приложение работать не будет!» Задумываюсь. Запуск в режиме эмуляции другой винды тоже не помогает. Ладно, думаю, поставлю виртуальную машину, на неё FreeDOS, и всё заработает.

Нахожу в закромах Virtual PC. Опять табличка про несовпадение битности. Уже начинаю злиться. Начинаю выкачивать 64-битную Virtual PC; на середине закачки понимаю, что придется возиться с ISO-образами, чтобы затолкнуть Pascal в виртуальную машину, или расшаривать какой нибудь диск, а для этого придётся настраивать сеть в FreeDOS... Самый простой вариант — обычная XP под виртуалкой, но и это займет не меньше часа.

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

Главное, ребята, вовремя осмотреться! А на ноутбук я поставил 64-битный FreePascal.

1681

Вылазка в стан врага

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

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

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

Преподаватель, опытный бухгалтер, зная, что я работаю в области IT, видимо, прониклась ко мне особой любовью — активировался ген ненависти к админам. На меня посыпались подколы и каверзные вопросы. Народ начал надо мной посмеиваться, но на кофе-брейках меня закидывали тупыми вопросами по поводу компов — через один можно слать на баш. Почти все в группе были с экономическим образованием и пришли на повышение квалификации, то есть я оказался в самом стане врага — точнее, в кузнице кадров. Меня это напрягало всё больше и больше, я начал терять интерес к предмету, стал отставать от программы, иногда выпадая целыми темами, и в итоге просто стал на лекциях читать с мобильника баш и IT happens. Преподавателя это задело, и мы поругались.

Админо-бухгалтера «два в одном» не вышло. Доучившись до середины курса, я забрал оставшиеся деньги и бросил всё нафиг — как гора с плеч упала. Думаю закончить начатое и доучиться в другом учебном центре, но выйдет ли — кто знает?

Всё-таки профессия бухгалтера сложна и непроста. Посчитать баланс крупной фирмы — очень тяжелый труд и огромная ответственность (вплоть до уголовной); задачу можно сравнить с поднятием крупного сервака, его запуском и решением проблем с падением и утечкой данных. Возможно, ключ холивара кроется в простом взаимонепонимании? Возможно, просто стоит прислушаться и попытаться понять другую сторону?

1680

Прокололся

Помнится, был у нас в институте предмет «инженерная графика» (черчение). К концу семестра надо было сдать огромный чертёж на формате A0. Надо сказать, что с ручками, карандашами, фломастерами и кисточками у меня взаимная антипатия ещё со школы, и этот самый чертёж мне не давался никак. Впрочем, на кафедре машинной графики у меня работал хороший знакомый, который пообещал помочь.

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

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

Преподаватель разостлал чертёж, мельком взглянул на него и постановил: «Чертёж делали не вы». Будучи смышлёным мальчиком, я отпираться не стал:

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

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

— А ты окружности циркулем обводил?

Только тут я понял, где прокололся — ни у одной окружности не было в центре отверстия от ножки циркуля.