Истории с тегом: образование

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

8887

Эти ваши команды

Я учусь на втором курсе айтишной специальности в крупном государственном вузе не очень крупного южного города нашей необъятной Родины. В расписании появился страшный зверь под названием «Организация ЭВМ и систем». Страшный не в силу своего природного содержания, а благодаря извращённому видению преподавательского состава.

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

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

Что-то у меня заработало не так. Зову барышню-аспиранта.

— Посмотрите, пожалуйста, у меня здесь…

— Так, подожди, это у тебя что вообще?

— Машинные команды, всё в шестнадцатиричной системе. Вот, сбоку перевод на ASCII.

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

А вы, старшие товарищи, ругаетесь на нас, «лоботрясов недоученных»: мол, страна просит героев, а рожают дебилов. Попробуй выучись с такими «учителями»!

8864

Двойной российский Inception

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

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

Я понимаю, что можно было второпях нагородить делов, но вам, уважаемые, любой мало-мальски смыслящий человек скажет, что массив восьмого уровня вложенности — это перебор!

В связи с этим хочу напомнить программистам старую истину Стива Макконнелла: «Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте», передать огромный привет Андрею Николаевичу и Ивану Юрьевичу и пожелать им на новом месте работы такого же наследства, которое досталось мне!

8832

Отсыпьте знаний

Привет читателям и писателям IT happens из далёкого 2006 года! Разрешите представиться: тупой юзверь. Всё, что умею — установить винду по книжке. Куча вопросов вида «как, зачем, почему». Процедура активации — тёмный лес, на хрена она нужна и почему не проходит, ещё менее ясно. Совет «спеца»: «А ты из безопасного режима».

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

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

К чему это всё? Да только лишь к тому, господа админы, саппорты и прочие, что не каждый тупой юзверь таковым останется навсегда. И вполне в ваших силах объяснить, что к чему, чтобы юзверь преодолел своё незнание и начал учиться. А пока вы будете кривить носы и искать, кто же помогает той блондинке, тупизны перед мониторами не убудет.

8816

Без плюсов, один лишь «С»

Прочитал GoF, всего Фаулера, трёхтомник Кнута, пересобрал FreeBSD, создал с друзьями agile-группу разработки MMORPG, поездил по конференциям, пожал руку Торвальдсу лично. Пришёл устраиваться на работу.

— 1С знаете?

— …

— До свидания.

8810

Атмосфера девяностых

В этом году в лаборатории в универе поставили новые компы. Заодно на всех столах появились… дискетки. Да-да, те самые, на 3,5".

Пару ведёт древний динозавр. Включаем компы, грузится «семёрка», запускаем VMware — здравствуй, DOS! Пишем программку. А как её забрать? На помощь приходит дискета. Вставить в дисковод, скопировать лабу, выйти из виртуалки, достать лабу.

Интересно, так сложно было на терабайтном винте создать крохотный раздел под FAT32?

8751

> /dev/null

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

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

Хеппи-энда у повести нет. Говорят, мужичок до сих пор охранником работает где-то на предприятии.

8748

Админит кремния

Заикнулся шефу, тоже системному администратору, что когда-то увлекался химией. Как выяснилось, увлекался и он.

Как-то я запросил у шефа пароль к серверу. В ответ получил SMS с названием одного сероуглеродистого соединения. Поскольку похвалялся знаниями, переспрашивать было ну совсем неудобно.

И вот сижу в серверной. Дело к полуночи, когда голова окончательно превращается в тыкву. Пытаюсь вспомнить формулу и думаю: «И вот на фига оно мне было нужно?»

Минут двадцать мучился: соединение необычное. И ведь вспомнил! Незапланированный экзамен по химии прошёл удачно.

8716

Век живи, век учись

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

А второй — когда прочитал в Википедии статью «Минускульные цифры». Век живи, век учись…

8693

SuperPuperAntiGame, или Гонка вооружений

В 1990 году поступил я в МВТУ им. Баумана и попутно устроился работать оператором в местный вычислительный центр под названием «Аквариум». Только-только появились первые персоналки, и к нам как раз завезли суперсовременные компьютеры IBM PC XT. Как водится, студенты сразу же вместо занятий стали на них играть.

Начальство поставило задачу игры запретить. Сначала пытались бороться словесно — не помогало. Тогда я решил бороться программно и взялся за изучение ассемблера. Через пару месяцев появился первый продукт под названием AntiGame. Программа резидентно висела в памяти, перехватывала запуск программ через функцию 4Bh 21 прерывания и имела базу сигнатур различных игр — просто читался кусок данных размером 32 байта из файла со смещением 1000h. Если запускаемая программа совпадала с одной из сигнатур, то считалась игрой. Запуск обрывался, в буфер клавиатуры посылалось echo y|del., проигрывалась веселая мелодия. Через месяц мелодию знали все.

Пару месяцев всё шло хорошо, база сигнатур пополнялась, студенты ходили злые и вынуждены были заниматься делом. Но тут группа студентов тоже села за ассемблер и через месяц хакнула мою программку. Хак быстро распространился среди посетителей «Аквариума», студенты снова стали довольные, играли повсеместно, а мелодии было не слышно. Отловив и изучив хак, я выяснил, что там тупо восстанавливался оригинальный вектор 21 прерывания, и моя программка обламывалась.

Покумекав, я взялся за клавиатуру. Спустя пару месяцев родился шедевр под названием SuperAntiGame. Это была шедевральная программа, написанная с использованием всех современных технологий, включая вирусные. Частично она даже использовала неизвестный тогда механизм «стелс», чем я до сих пор горжусь. Программа перехватывала 13 и 21 прерывания, причём не обычным способом, а путём внедрения в точки входа в области DOS, что делало бесполезным восстановление оригинальных векторов прерывания. В функциях поиска, открытия и записи файлов делалась проверка на имя файла antigame.exe и в случае совпадения возвращалась ошибка «File not found», так что ни один из «коммандеров» программу не видел. Также перехватывалось прерывание таймера 1Ch — на нём висела функция, постоянно проверяющая код в памяти. Если хотя бы один бит был изменён, то отключалась клавиатура, запускалась мелодия, флаг read only со всех файлов в текущем каталоге снимался, а в буфер клавиатуры отправлялось так любимое студентами echo y|del.. Помимо этого, там было ещё множество новаторских решений. Полный исходник занимал около 300 КБ текста, откомпилированный файл — 9 КБ.

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

Я, конечно, не питал иллюзий и знал, что рано или поздно это случится. К тому времени подходила к концу разработка бета-версии нового SuperPuperAntiGame, работающего в защищённом режиме только вышедшего тогда процессора 386SX, первые компьютеры с которым появились в нашем «Аквариуме».

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

8692

Ты не знаешь кунг-фу

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

— А что такое конденсаторы?

— Ну, это специальные штучки для накопления электрического заряда.

— А как они здесь накапливают заряд? — показывает жена на зелёную печатную плату материнки.

— Вот видишь зелёные полоски-дорожки? Знаешь, что это?

— Конечно! Это Матрица!