Инструменты пользователя

Инструменты сайта


msx:basic_programming_guide:13

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

msx:basic_programming_guide:13 [2019-07-04 10:14]
msx:basic_programming_guide:13 [2022-09-09 23:28] (текущий)
Строка 1: Строка 1:
-[<>​] +~~HIDEPAGE:​search;​sitemap~~ 
-~~TOC wide~~ +~~REDIRECT>msx:basic_dialogue_programming_language:013~~
- +
-====== Глава XIII. Программисты шутят ====== +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Я думаю, очень важно, чтобы в научной работе всегда оставалось место для шутки и развлечения. Когда вычислительная техника и программирование только зарождались,​ в нашей работе было много весёлого и забавного. +
-<WRAP rightalign>​ +
-—//​А.Перлис,​ профессор Йельского университета//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-====== XIII.1. Проза ====== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-А что касается мистера Френкеля…,​ то он начал страдать от компьютерной болезни — о ней сегодня знает каждый,​ кто работал с компьютерами. Это очень серьёзная болезнь и работать при ней невозможно.Беда с компьютерами состоит в том, что вы играете с ними. Они так прекрасны,​столько возможностей — если чётное число, вы делаете это, если нечётное,​ делаете то, и очень скоро на одной–единственной машине можно делать все более и более изощрённые вещи, если только вы достаточно умны. +
-<WRAP rightalign>​ +
-—//​Ричард Фейнман//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-//​Программирование очертя голову//​ (абсолютно серьёзный доклад на совершенно серьёзную тему) +
- +
-Уважаемые товарищи,​ с сожалением приходится констатировать,​что широкое распространение вычислительной техники и обучение информатике приводит к учащению заболеваний ПОГ.  +
- +
-//​Программирование очертя голову//​ (ПОГ) —"​детская"​ болезнь,​ возникающая в начальный период обучения программированию после того как человек овладевает основами какого–либо языка программирования и составляет первую в своей жизни программу. ПОГ наблюдается у людей различного возраста. +
- +
-Но, к счастью,​ тяжёлая форма болезни — редкость. У большинства начинающих программистов ПОГ протекает почти незаметно,​не причиняя никаких страданий ни больному,​ ни окружающим. +
- +
-Интересно,​ что у женщин обычно наблюдается лёгкая форма заболевания,​ причём женщины старше 40 лет — даже имунны (по крайней мере, у них ещё не отмечено ни одного случая заболевания). Опасности заболеть ПОГ в тяжёлой форме особенно подвержены юноши переходного возраста,​ а наиболее серьёзные последствия зафиксированы у пожилых мужчин (как и в случае других детских болезней). +
- +
-//​Течение//​ болезни ПОГ описывается и измеряется не количеством дней, а числом составленных программ. Инкубационный период — 3–4 программы. Если после создания 10–20 программ симптомы болезни затухают,​ можно констатировать лёгкую форму и, что особенно существенно,​ приобретение устойчивого иммунитета. Если же внешние признаки ПОГ проявляются и после 20 программ,​ случай — тяжёлый. Остановимся подробнее именно на таком случае. +
- +
-//​Симптомы//​. Первый видимый (или вернее слышимый) признак заболевания проявляется в том, что больной (или ОГ–программист),​ находясь в состоянии либо эйфории,​ либо депрессии,​ непрерывно говорит о своей последней программе. Депрессивное состояние наблюдается,​когда программа в очередной раз оказывается неверной,​ хотя больной по меньшей мере дважды в день объявляет,​ что неисправна машина. В состоянии эйфории,​ когда, по мнению ОГ–программиста,​ текст программы исправлен,​ больной пытается всем объяснить,​ в чем же состояла последняя ошибка. Несчастный! Он искренне уверен,​ что ошибок в программе больше нет! Он ещё не понимает,​что обречён на бесконечный поиск. +
- +
-При сложившейся картине болезни в процессе сверхоперативной борьбы с ошибками (известным методом проб и ошибок) программа становится непонятной даже для автора,​ а сам ОГ–программист теряет в тяжёлых случаях способность логического,​ а в особо тяжёлых — любого мышления. +
- +
-К симптомам ПОГ относится и отсутствие интереса (или потеря его) к литературе по программированию,​ презрение к системным,​ структурным,​продуманным и дисциплинированным методам программирования. Нередки случаи,​ когда больной "​изобретает колесо"​. +
- +
-Стремление при любой возможности демонстрировать уверенную и умелую работу с машиной,​головокружительные трюки (от которых нет никакой практической пользы),​ речь, пестрящая жаргонными словами,​ такими,​ как "​принтить",​ "​листить"​ и т.п.,— тоже признаки тяжёлой болезни. +
- +
-У ОГ–программистов наблюдается покраснение глаз, бледность лица, дрожь в руках и голосе,​ особенно,​ когда речь идёт об ЭВМ и программировании. В очень тяжёлых случаях — разрушение зубов и выпадение волос. +
- +
-__Лечение__. Наука ещё не знает вполне эффективных средств борьбы с ПОГ. Можно посоветовать хорошо продуманный начальный курс программирования,​ а также … длительное пребывание на свежем воздухе. Полезно время от времени насильно удалять ОГ–программиста от машины. Например,​ в подходящий момент вывернуть электрические пробки. Однако необходимо следить,​ чтобы при этом не пропало слишком много трудов ОГ–программиста,​так как его реакции совершенно непредсказуемы. Способность мыслить изолированного от машины больного восстанавливается довольно быстро.Если перед ним каким–то чудом окажется текст программы,​ в которой он при помощи машины двое суток отчаянно пытался найти ошибку,​ то вполне вероятно,​что теперь он обнаружит её в течение 10–15 минут. +
- +
-Благотворно действует на больного знакомство с парой новых языков программирования. Иногда полезно доверить ОГ–программисту большую и сложную задачу. Решая её, больной скоро поймёт,​ что его знания недостаточны. Это будет способствовать выздоровлению или … обострению болезни. +
- +
-Люди, страдающие болезнью ПОГ, для общества не опасны. После выздоровления они опять становятся его полноценными членами,​ а из некоторых выходят даже неплохие программисты. +
- +
-//​Профилактика//​. Предупреждение ПОГ крайне затруднительно,​ особенно у учителей информатики. Более того, ОГ–программист,​ занимающий эту должность,​ заражает обучаемых. Учитель,​ страдающий ПОГ даже в лёгкой форме, испытывает непреодолимое отвращение к методике обучения программированию и общепризнанным методам обучения. Обычно он учит отдельным командам и трюкачеству с их помощью,​ а также знакомит со своим богатым опытом на поприще бессистемного поиска ошибок. Он уверен,​что программирование — учение о командах языка программирования (наглядно:​ лесоводство — учение о большом количестве отдельных деревьев). +
- +
-Распространению ПОГ способствует нехватка учебников и справочников по программированию. До сих пор издательства ещё не поняли в полной мере своей ответственности в этом вопросе. В прессе,​ на радио и по телевидению необходимо ограничить количество выступлений,​ подстрекающих на ПОГ,​при этом увеличив число компетентных выступлений квалифицированных специалистов. +
- +
-Большие надежды в профилактике болезни возлагаются на профсоюзные,​ комсомольские и спортивные организации. Несомненно,​ что при решительной помощи общественности тяжёлая форма болезни ПОГ будет окончательно предотвращена. +
- +
-===== Спаянный коллектив ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Не в совокупности ищи единство,​ но более — в единообразии разделения. +
-<WRAP rightalign>​ +
-—//​Козьма Прутков//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-//​Спаянный коллектив//​ +
- +
-Микродрама в системной магистрали +
- +
-Перевод с машинного +
- +
-__Действующие лица__:​ +
-  * П.П. — Программа Пользователя +
-  * М. — Монитор +
-  * П. — Принтер +
-  * Т.К. — Телеграфный Канал +
-  * Т. — Терминал +
-  * Б. — Буфер +
-  +
-<​code>​ +
-        Происходит прерывание от Программы Пользователя. +
-   ​П.П. ​  Эй, Монитор! +
-     ​М. ​  ​Что?​ +
-   ​П.П. ​  ​Цифру "​6"​ напечатать надо. +
-     ​М. ​  Эй, Принтер! +
-     ​П. ​  Я занят. +
-   ​П.П. ​  ​Тогда,​ Монитор,​ дай ещё памяти. +
-     ​М. ​  ​Нет памяти,​ пиши на диск. Диск! +
-        Диск поднимает флаг готовности. +
-     ​Д. ​  ​Вызывали?​ +
-     ​М. ​  ​Записать надо. +
-     ​Д. ​  ​Есть! +
-   ​Т.К. ​  ​Монитор! Для Вас получен байт. +
-     ​М. ​  ​Жди. Диск, записал?​ +
-     ​Д. ​  ​Нет свободного места. +
-     ​М. ​  ​Телеграфный Канал! Давай свой байт. ​  +
-   ​Т.К. ​  ​Уже пришёл следующий,​ старый я стёр. +
-     ​М. ​  ​Программа,​ это тебе прислали байт? +
-   ​П.П. ​  ​Нет. +
-        Монитор засовывает байт в буфер. +
-     ​М. ​  ​Терминал! Пользователь что–нибудь нажимал?​ +
-     ​Т. ​  ​Нет. +
-     ​М. ​  ​Программа! Работай дальше. +
-   ​П.П. ​  Не могу, цифру "​6"​ напечатать надо. +
-     ​М. ​  ​Принтер! +
-     ​П. ​  Я занят! +
-   ​Т.К. ​  ​Монитор! Для Вас получен байт. +
-     ​М. ​  ​Давай. Программа,​ это твой байт? +
-   ​П.П. ​  ​Нет. +
-     ​М. ​  ​Буфер! +
-     ​Б. ​  Я переполнен. +
-        Монитор выбрасывает байт. +
-     ​М. ​  ​Принтер! +
-     ​П. ​  ​Свободен. +
-     ​М. ​  ​Печатай цифру "​6"​. +
-     ​П. ​  ​Есть. +
-     ​М. ​  ​Программа,​ работай дальше. +
-        Программа работает,​ проходит одна миллисекунда. +
-   ​П.П. ​  Эй, Монитор! Цифру "​7"​ напечатать надо. +
-</​code>​ +
-<WRAP rightalign>​ --- Газета "За науку"​(МФТИ) 10.10.86 </​WRAP>​ +
- +
-===== Диалог ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Мой способ шутить — это говорить правду.\\  +
-На свете нет ничего смешнее. +
-<WRAP rightalign>​ +
-—//​Д.Б.Шоу//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
- — Серёжа,​ дорогой,​ как тебе нравится моё новое платье?​ Элегантное?​ +
- +
-"​Какой ужас! Элементарную программу не могу составить"​. +
- +
- — Сергей,​ ты считаешь,​ что можно не отвечать мне? Какой ужас! +
- +
-"​Считаешь,​ считаешь — не получается. Что–то в программе"​. +
- +
- — Я для тебя ноль… +
- +
-"​Неужели деление на ноль? Быть не может"​. +
- +
- — Ты не можешь уделить мне одну минутку. Ты вообще не видишь меня, смотришь как через стекло. +
- +
-"​Причём здесь стек…"​ +
- +
- — Все, моя чаша терпения переполнилась. +
- +
-"На переполнение не похоже"​. +
- +
- — Я знала, что ошибаюсь,​ ещё когда мы регистрировались. +
- +
-"​Ошибка в регистрах!… Конечно,​ не из того беру"​. +
- +
- — Ты никогда не понимал меня. Я измучилась. +
- +
-"​Все понятно. Эх, если бы иметь машину,​умеющую по–настоящему вести диалог с человеком,​ разве бы я мучился"​. +
- +
- — Раз ты этого хочешь,​ я ухожу. Ты не любишь меня. Все. Кончено.  +
- +
- — Галинка,​ милая. Все. Ура! Кончено. Готова программа. Теперь мы заживём. +
- +
-"Не готова я уходить"​. +
- +
- — Поторопился и ошибся. Еле исправил. +
- +
-"Не стоит торопиться"​. +
- — Понимаешь,​ не из того регистра. +
- +
-"И до регистрации он точно такой же был. Не говорит,​не говорит,​потом скажет слово, другое… Много ли женщине для счастья надо?"​ +
- +
- — Серёжа,​ дорогой,​ как тебе нравится моё новое платье?​… +
- +
-===== Сказка ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Поиск истины способен изрядно позабавить. +
-<WRAP rightalign>​ +
-—//​Вернон Говард//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-1. Хотите ли вы узнать историю трёх маленьких шустрых горошин?​ Если да, перейдите к 4, если нет, перейдите к 2. +
- +
-2. Может быть, вы предпочитаете историю трёх длинных жердей?​ Если да, перейдите к 16, если нет, перейдите к 3. +
- +
-3. Может быть, вы предпочитаете историю о трёх простых скромных кустиках?​ Если да, перейдите к 17, если нет, перейдите к 21. +
- +
-4. Жили–были когда–то три маленькие горошины,​ одетые во все зелёное. Они мирно спали в своём стручке. Личики у них были совсем кругленькие,​ а маленькие носики тихо и ровно посапывали. Если вы предпочитаете другое описание,​ перейдите к 9, если вас все устраивает,​ перейдите к 5. +
- +
-5. Они не видели снов. Эти маленькие существа вообще никогда не видят снов. Если вы предпочитаете,​ чтобы они видели сны, перейдите к 6; иначе перейдите к 7. +
- +
-6. Они видели сны. Эти маленькие существа все время видят сны, и ночи скрывают их чудесные сновидения. Если вы хотите узнать эти сны,​перейдите к 11, если вам это безразлично,​ перейдите к 7. +
- +
-7. Их маленькие ножки были укутаны в тёплые носки, а с рук они никогда не снимали чёрных шерстяных перчаток.Если вы предпочитаете перчатки другого цвета, перейдите к 8, если этот цвет вас удовлетворяет,​ перейдите к 10. +
- +
-8. Они никогда не снимали голубых шерстяных перчаток. Если вы предпочитаете перчатки другого цвета, перейдите к 7,если этот цвет вам подходит,​ перейдите к 10. +
- +
-9. Жили–были три маленькие горошины,​ которые обошли весь свет, бродя по дорогам. К вечеру,​ утомлённые и усталые,​ они очень быстро уснули. Если вы хотите знать, что будет дальше,​ перейдите к 5, иначе перейдите к 21. +
- +
-10. Всем трём снился одинаковый сон,​они в самом деле нежно любили друг друга; словно отражённые в трёх зеркалах,​ они видели похожие сны. Если вы хотите узнать их сон, перейдите к 11, иначе перейдите к 12. +
- +
-11. Им снилось,​ что они уселись ужинать в харчевне,​ и, открыв крышку кастрюли,​ они увидели,​ что это был суп из чечевицы. От ужаса они проснулись. Если вы хотите знать, почему они проснулись в ужасе, поищите в Энциклопедии слово "​чечевица",​ и не будем об этом больше говорить,​ если вы считаете бесполезным углублять этот вопрос,​ перейдите к 12. +
- +
-12. "​Ой–ой–ой!"​— вскрикнули они, открыв глаза. "​Ой–ой–ой! что за сон мы увидели"​. "​Это не к добру",​—сказала первая горошина. "​Да",​—сказала вторая,​—это так, я боюсь"​. "Не тревожьтесь",​— сказала третья,​ которая была самая умная, — "​надо не нервничать,​ а разобраться. Я сейчас попробую вам все объяснить. Если вы хотите сразу же узнать толкование этого сна, перейдите к 15, если, напротив,​ вы хотите узнать,​ как на это прореагировали две другие горошины,​ перейдите к 13. +
- +
-13. "Не заговаривай нам зубы",​—сказала первая. — "С каких это пор ты научилась толковать сны?"​ "Да, с каких пор?"​—прибавила вторая. Если вы тоже хотите знать, с каких пор, перейдите к 14, иначе перейдите все—таки тоже к 14, иначе вы ничего не узнаете больше. +
- +
-14. "С каких пор?"​— вскричала третья. "​Разве я знаю? Да,я умею. Сейчас увидите!"​ Если вы хотите увидеть,​ перейдите к 15, если нет, то тоже перейдите к 15, но вы ничего не увидите. +
- +
-15. "​Хорошо,​ посмотрим!"​— сказали сестры. "​Мне не нравятся ваши насмешки",​— ответила тогда третья горошина."​И вы ничего не узнаете. Кстати,​пока мы здесь все довольно живо обсуждаем,​ не уменьшились ли ваши страхи?​ Или, может, совсем рассеялись?​ Тогда стоит ли копаться в глубинах вашего подсознания мотыльковых?​ Пойдёмте скорее к фонтану,​ умоемся и порадуемся этому весёлому утру в чистоте и добром здравии! "​Сказано–сделано:​ они вылезли из своего стручка,​ опустились осторожно на землю и затем быстро и весело добрались до фонтана. Если вы хотите знать, что было у фонтана,​ перейдите к 16, если вы этого не хотите,​ перейдите к 21. +
- +
-16. Три большие длинные жерди смотрели,​ что они делают. Если три большие жерди вам не нравятся,​перейдите к 21,если они вас устраивают,​ перейдите к 17. +
- +
-17. Три простых скромных кустика смотрели,​ что они делают. Если вам не нравятся три простых скромных кустика,​ перейдите к 21, если они вам подходят,​ перейдите к 18. +
- +
-18. Видя, что они так на них глазеют,​ три шустрые маленькие горошины смущённо отвернулись. Если вы хотите узнать что они потом сделали,​перейдите к 19, если вы этого не желаете,​ перейдите к 21. +
- +
-19. Они быстренько побежали к своему стручку,​укрылись в нем и снова заснули. Если вы хотите знать продолжение,​ перейдите к 20, если вы этого не желаете,​ перейдите к 21. +
- +
-20. А продолжения то и нет, потому что сказка кончилась. +
- +
-21. И в этом случае сказка тоже кончилась. +
- +
-<WRAP rightalign>​ --- Раймон Кено </​WRAP>​ +
- +
- +
-===== Типы программистов ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Смех — это солнце:​ оно прогоняет зиму с человеческого лица. +
-<WRAP rightalign>​ +
-—//​Виктор Гюго//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-Хотя программистов все ещё мало, среди них есть уже свои типы. Я попытался охарактеризовать самые яркие из них. +
- +
-//​Классификация//​ с точки зрения подхода к работе +
- +
-Программист — "//​штамповщик//"​ — добросовестный ремесленник в лучшем смысле этого слова. Работает,​ руководствуясь плотницким правилом "​Десять раз отмерь,​ один отрежь"​. Программирование для него — честное ремесло. Что ни программа - то те же самые тщательно сработанные двери. +
- +
-Программист — "//​богемщик//"​ — бывает всесторонним художником. Программирование для него — конёк и средство выражения. Его программы полны красок и тонов. Что ни программа — то произведение искусства. Что ни программа — то своя "​Неоконченная симфония"​. +
- +
-Программист — "//​стрелок//",​ иногда называемый "​очумелым"​ — продукт современной цивилизации. К программированию относится как к бою, его оружие — терминал. Что ни программа — то игра в тотализатор. Что ни программа — прыжок в воду. +
- +
-//​Классификация//​ с точки зрения профессии +
- +
-Программист — "//​рутинер//"​ — является результатом обычной профессиональной отупелости. Его не радуют плоды его работы,​ он не переживает каждый проход программы через компьютер,​ знает, что беганьем вокруг стола событий не ускорит. Взгляд на новый компьютер обрадует его не более, чем взгляд на новый кухонный гарнитур. Считает,​ что программировать умеет, и обычно так оно и есть. +
- +
-Программист — "//​любитель//"​ — хотя и работает в своей специальности уже лет 20, все ещё не забыл тех счастливых минут, когда был сам себе и компилятором,​ и перфоратором,​ и оператором в те времена,​ когда первый в республике "​УРАЛ-1"​ выдавал свои исторические результаты. В нём ещё горит юношеское волнение,​ когда через машину проходит именно его программа,​ а за каждый результат он боится,​ как за собственного ребёнка. Часто думает,​ что программировать не умеет, но на самом деле все обстоит не так плохо. +
- +
-Программист — "//​дилетант//"​ — в сущности счастливый человек:​ все время чем–то восхищён,​ удивлён. Компьютер работает! Компьютер стоит! Солнышко светит! Он постоянно в движении,​ постоянно в деле. Все в поле его зрения,​ ничто не ускользнёт от его глаз, ничто чуждое ему не чуждо. Он убеждён,​ что умеет программировать,​ но, как всегда,​ снова ошибается. +
- +
-//​Классификация//​ с точки зрения характера +
- +
-Программист — "//​флегматик//"​ считает своим девиз "​лучшее — враг хорошего"​. Он не разволнуется,​ если за неделю до окончания проекта выяснится,​ что можно было бы начать сначала и это было бы лучше. Знает, что хорошо закончить лучше, чем хорошо начать. +
- +
-Программист — "//​сангвиник//"​ мечется от здравой неудовлетворённости. Свою жизнь проживает в собственных программах,​ и пока они несовершенны,​ спокойного сна у него не будет. Отличается кипучей активностью и хроническим недосыпанием. +
- +
-Программист — "//​холерик//"​ ничем не доволен. Одержим стремлением к полному совершенству,​ прогрессивности и полноте всего, поэтому переделывает уже переделанное и не доделывает недоделанное. Сомнения в его проекте рассматривает как наглость,​ а на вопрос,​ когда будет готов проект,​ впадает в обморочное состояние. +
- +
-Подсчитаны 27 различных комбинаций типов программистов. Некоторые из них выглядят явно абсурдными. Остановимся хотя бы на трёх крайностях:​ +
- +
-"//​Штамповщик//"​ — "//​рутинер//"​ — "//​флегматик//"​ — обычно любим своими шефами. Работает добросовестно,​ надёжно,​ непогрешимо. В случае необходимости может проявить себя и как способный бухгалтер. +
- +
-"//​Богемщик//"​ — "//​любитель//"​ — "//​сангвиник//"​ — программист,​ каких поискать. В нем, как говорится есть "​искра божия",​ около него целый штаб помощников. Если его не свалит инфаркт,​ всегда готов для направления в психиатрическую лечебницу. +
- +
-"//​Стрелок//"​ — "//​дилетант//"​ — "//​холерик//"​ — известен в своём кругу под прозвищем "​деятельный болван"​. Совершенно не важно, что он делает в программировании. Он все равно не знает, как это делать. +
- +
-<WRAP rightalign>​ --- И.Демнер (журнал "Vega a technika mladezi"​) </​WRAP>​ +
- +
- +
-===== Формулы аутотренинга для пользователей ЕС–1060 ===== +
- +
-Я совершенно спокоен… +
- +
-Зависание приятно мне… +
- +
-Расслабляются руки… ноги… туловище… +
- +
-Расслабляется голова… Голова совсем расслабла… +
- +
-После зависания это ощущение пройдёт… +
- +
-Я зависаю вместе с операционной системой… +
- +
-Зависают мои руки… ноги… туловище… +
- +
-Зависает голова… Голова совсем зависла… +
- +
-После зависания это ощущение пройдёт… +
- +
-Зависание приятно мне… +
- +
-Мне нравится работать на ЕС–1060… +
- +
-Частые зависания способствуют регулярным занятиям аутогенной тренировкой… +
- +
-Аутогенная тренировка благотворно действует на мою нервную систему… +
- +
-Я совершенно спокоен… +
- +
-Ничто не отвлекает меня… +
- +
-Не отвлекают мысли о работе — ведь я и так на работе… +
- +
-Я нахожусь на работе и погружен в состояние полного покоя… +
- +
-Ощущение зависания постепенно проходит… +
- +
-Все больше нарастает ощущение работы ЭВМ… +
- +
-Словно лёгкий ветерок в области лба… +
- +
-Это лёгкий сквознячок из машинного зала… +
- +
-По моему телу пробегает дрожь… +
- +
-Мои пальцы готовы в любую секунду побежать по клавиатуре,​ чтобы первым ворваться,​ запустить задачу,​ захватить ресурсы ЭВМ… +
- +
-Я ведь как сжатая пружина… +
- +
-Внимание… Рестарт!!! +
- +
-<WRAP rightalign>​ --- д–р И.В. Сидисидзе </​WRAP>​ +
- +
-===== Новогодний рецепт ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Изучая поваренную книгу, программист может +
-узнать много интересного и полезного. +
-<WRAP rightalign>​ +
-—//​Д.Кнут//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-Приближается Новый год. Как быстро изготовить программный продукт?​ Напишите небольшую программу на Фортране,​ 200–300 перфокарт разбейте на модули,​ по 50 операторов каждый. Добавьте 2–3 подпрограммы на Ассемблере,​ отперфорируйте. После этого все тщательно перемешайте и медленно пропустите через транслятор при температуре машинного зала. Повторите процедуру несколько раз,до полного исчезновения ошибок. Обработайте редактором связей и запустите на счёт. Получите листинг. Если обнаружится ошибка — отключите диагностику. Продокументируйте. Программный продукт готов к употреблению. +
- +
-===== Удивительное рядом! ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Вот уж и радио изобрели — а счастья все нет…<​WRAP rightalign>​ +
-—//​И.Ильф//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-^  Нажимаемые клавиши ​ ^  Результат ​ ^ +
-|<​key>​CTRL+>​+?</​key>​|print| +
-|<​key>​CTRL+|+M+T+D</​key>​|print| +
-|<​key>​CTRL+;​+4</​key>​|print| +
-|<​key>​CTRL+;​+5</​key>​|auto| +
-|<​key>​CTRL+F+D+X+B</​key>​|auto| +
-|<​key>​CTRL+;​+;</​key>​|goto| +
-|<​key>​CTRL+W+O</​key>​|goto| +
-|<​key>​CTRL+|+M+T+D+Y</​key>​|%%run"​COM:"​%%| +
-|<​key>​SHIFT+4+7+8+9</​key>​|%%run"​COM:"​%%| +
-|<​key>​CTRL+W+[+S</​key>​|%%save"​COM:"​%%| +
-|<​key>​SHIFT+5+7+8+9</​key>​|%%save"​COM:"​%%| +
-|<​key>​CTRL+W+O+S</​key>​|%%load"​COM:"​%%| +
-|<​key>​SHIFT+6+7+8+9</​key>​|%%load"​COM:"​%%| +
-|<​key>​CTRL+>​+?​+BS</​key>​|print run| +
-|<​key>​CTRL+8+9+=</​key>​|<​key>​CAPS</​key>​| +
-|<​key>​CTRL+;​+2</​key>​|<​key>​CAPS</​key>​| +
-|<​key>​CTRL+;​+3</​key>​|<​key>​РУС</​key>​| +
-|<​key>​CTRL+8+9+^</​key>​|<​key>​РУС</​key>​| +
-|<​key>​CTRL+;​+2+3</​key>​|<​key>​CAPS+РУС</​key>​| +
-|<​key>​CTRL+8+9+=+^</​key>​|<​key>​CAPS+РУС</​key>​| +
-|<​key>​CTRL+BS+H+^</​key>​|<​key>​CTRL+STOP</​key>​| +
-|<​key>​SHIFT+4+9</​key>​|%%"​цифры"​run"​COM:"​%%| +
-|<​key>​SHIFT+5+9</​key>​|%%"​цифры"​save"​COM:"​%%| +
-|<​key>​SHIFT+6+9</​key>​|%%"​цифры"​load"​COM:"​%%| +
- +
-Читателю предлагается продолжить данный список на компьютере [[msx:msx_1]] и составить аналогичный на компьютере [[msx:msx_2]] ! +
- +
-===== Теория ошибок ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Ошибки так же неисчерпаемы,​ как и атом. +
-</​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-//​Аксиома//​. В любой программе есть ошибки. +
- +
-//​Закон пропорциональности//​. Чем больше программа необходима,​ тем больше в ней ошибок. +
- +
-//​Следствие//​. Ошибок не содержит лишь совершенно ненужная программа. +
- +
-==== Фундаментальный закон теории ошибок ==== +
- +
-На ошибках учатся. +
- +
-Следствие 1. Программист,​ написавший программу,​ становится учёным. +
- +
-Следствие 2. Чем больше программист делает ошибок,​ тем быстрее он становится учёным. +
- +
-Следствие 3. Крупный учёный–программист никогда не пишет правильной программы. +
- +
-//​Замечание//​. На то он и учёный. +
- +
-//​Указание начинающему программисту//​. Если вы с первого раза сумели написать программу,​ в которой транслятор не обнаружил ни одной ошибки,​ сообщите об этом системному программисту. Он исправит ошибки в трансляторе. +
- +
-//​Закон находимости ошибок//​. Программист может обнаружить ошибку только в чужой программе. +
- +
-//​Следствие//​. Ошибке не все равно, кто её обнаружил. +
- +
-//​Совет начинающему программисту//​. Никогда не исправляйте найденные ошибки,​ ибо это повлечёт за собой появление неизвестного числа ненайденых. Лучше опишите их в сопроводительной документации +
-как особенность программы. +
- +
-//​Определение//​. Будем называть //​языком ошибок//​ правила,​ в обход которым пишутся программы. +
- +
-==== Язык ошибок ==== +
- +
- +
-Ошибки могут следовать друг за другом. +
- +
-От перестановки двух эквивалентных ошибок результат не меняется (коммутативность эквивалентных ошибок). +
- +
-Две последовательные ошибки можно объединить в одну, более сильную. +
- +
-Одинаковые ошибки необязательно делать каждый раз, достаточно сделать одну, а затем обращаться к ней по мере необходимости из любого места программы. +
- +
-Ошибки могут образовывать циклы. Наиболее устойчивый из них — бесконечный. +
- +
-Ошибки могут вызывать друг друга и сами себя (рекурсивность ошибок). +
- +
-Ошибки допускают многократное вложение друг в друга. Две одинаковые вложенные ошибки называются чётной ошибкой и ошибкой не являются. +
- +
-//​Свойство чётности ошибок//​. Если написанная программа сработала правильно,​ то это значит,​ что во время её работы выполнилось чётное число ошибок или программист не понял задание. +
- +
-//​Формулировка вышеприведённого свойства,​ предназначенная для политиков.//​ +
- +
-Ошибка,​ повторенная дважды,​ перестаёт быть ошибкой. +
- +
-==== Взаимодействие ошибок с базовой операционной системой ==== +
- +
-Во время исполнения ошибки имеют наивысший приоритет. Прервать исполнение ошибки может только другая,​ более активная ошибка. +
- +
-Запросы операционной системы к ошибкам ошибками могут игнорироваться. +
- +
-Запросы ошибок к операционной системе игнорироваться не могут. +
- +
-При работе с файлами ошибки могут пользоваться файловой системой базовой ОС и её ошибками. +
- +
-На ЭВМ с параллельной архитектурой может выполняться несколько ошибок одновременно. +
- +
-==== Системные программы ==== +
- +
-Системные программы облегчают процесс написания прикладных программ и их ошибок. +
- +
-//​Определение. Тестирование//​ — это процесс нахождения ошибок в тесте. +
- +
-Хороший тест должен содержать ошибки,​ компенсирующие их нехватку в тестируемой программе. +
- +
-Языковый редактор,​ призванный уберечь программиста от синтаксических ошибок,​ позволяет вносить в программу весьма хитроумные ошибки,​ которые не удаётся обнаружить ни транслятором,​ ни отладчиком. Обычный текстовый редактор таких возможностей не предоставляет. +
- +
-Программа–транслятор,​ предназначенная для перевода программ с языка высокого уровня на машинный язык, при переводе порождает ошибки. Ошибки,​ которые содержались в исходном описании,​ переводятся безошибочно. +
- +
-Заключительный совет тем, кто до него добрался. До начала работы над проектом следует тщательно продумать все необходимые ошибки и связи между +
-ними. Это значительно упростит работу работу над ошибками в самом проекте. +
- +
-<WRAP rightalign>​ --- В.Тихонов </​WRAP>​ +
- +
- +
-===== Из записной книжки программиста ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Смешную фразу надо лелеять,​ холить,​ ласково поглаживая по подлежащим. +
-<WRAP rightalign>​ +
-—//​И.Ильф и Е.Петров//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-  * Прежде чем написать программу — убедись,​ что существует ЭВМ, способная её переварить. +
-  * Чтобы овладеть искусством программирования,​ нужно в первую очередь научиться владеть собой. +
-  * Научись писать коротко сложные программы,​ и тогда ты сможешь изредка позволять себе писать длинно простые. +
-  * Если ты не видишь очевидных ошибок в своей программе,​ не отчаивайся,​ — скорее всего, ты близок к тому, чтобы стать настоящим программистом. +
-  * Помни, что несколько лишних операторов в программе не принесут такого вреда, как отсутствие двух–трёх необходимых. +
-  * Если, по–твоему,​ программа составлена правильно,​ это ещё не значит,​ что с этим согласится машина. +
-  * Помни, что употребление в программе бранных слов и выражений не всегда является действенным способом заставить её работать. +
-  * Если программа заработала,​ не расстраивайся — долго это продолжаться не будет. +
-  * Занимаясь улучшением работающей программы,​ помни, что это верный способ сделать её хуже. +
-  * Если машина вышла из строя ещё до того, как программа стала выдавать результаты,​ — не унывай,​ — скорее всего, они были бы ошибочными. +
-  * Нет ничего более интересного и загадочного,​ чем с ошибками составленная,​ но безошибочно работающая программа. +
-  * Вкладывая в программу всю свою душу, не забывай,​ что её ещё будут эксплуатировать. +
-  * Если планируешь написать большую,​ сверхсложную и, самое главное,​безошибочно работающую программу — подумай сначала о своих близких. +
-  * Программа — высокая поэзия,​ результаты её работы — грубая проза. +
-  * Основной вопрос программирования:​ что сложнее — программа или написавший её программист?​ +
-  * Каждая программа — отражение достоинств и недостатков её составителя. +
-  * Не разговаривай с друзьями и близкими на алгоритмическом языке — тебя могут неправильно понять. +
-  * Утреннее машинное время возьми себе, дневное раздели с другом,​ а вечернее отдай врагу. +
-  * Надпись на дверях машинного зала: "//​Оставь надежду всяк сюда входящий//"​. +
-  * Если вы не умеете программировать — не отчаивайтесь,​ скорее всего, это не самый лучший из ваших недостатков. +
-  * ТЗ для программиста:​ "​пойди туда, не знаю куда,​найди то,не знаю что"​. +
-  * Программист не стареет,​ — устаревают его программы… +
-  * Если твои близкие не программируют,​ стыдись! Ты позоришь звание программиста! +
-  * Программисты,​ как и ЭВМ, бывают 1, 2, 3, 4–го и т.д. поколений… +
-  * Если с твоей программой может свободно работать совершенно посторонний человек,​ то либо ты альтруист,​ либо тебе есть ещё чему поучиться в жизни… +
-  * В чем разница между системным программистом и программистом вообще?​ Первый,​ как правило,​ работает на машину,​ а второй заставляет машину работать на себя. +
-  * С юмором написанная программа зачастую лишь подтверждает отсутствие чувства юмора у заказчика. +
-  * Каждая новая программа — это, как правило,​ хорошо забытая старая. +
-  * На каждые тридцать правильных операторов записывай один неправильный — это делает жизнь разнообразнее! +
-  * Помни: войти в подпрограмму,​ как правило,​ гораздо легче, чем из неё выйти! +
-  * Не давайте далеко заплывать плавающей запятой! +
-  * Учти: вложенные циклы не должны скрипеть при работе… (Ю. Шихонин) +
-  * Стоит ли писать программу,​ если заранее знаешь,​ с какого оператора она начнётся и каким закончится?​ +
-  * Надо ли материально поощрять специалиста,​если ему и так дана возможность попрограммировать?​ (Е.Корженевский) +
-  * Создав систему,​ посмотри — не операционная ли она! +
-  * Категорически запрещается сушить супервизор на интерфейсе! +
-  * Помни, что ЭВМ женского рода! (Г.Юдин) +
- +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Ум современного молодого человека рано изнашивается усвоением чужих мыслей и теряет способность к самодеятельности и самостоятельности. +
-<WRAP rightalign>​ +
-—//​В.О.Ключевский//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-===== Поговорки ===== +
-  -  +
-  - Семеро одного дисплея не ждут. +
-  - Каждому программисту ЭВМ выдаёт то, чего он заслуживает (из опыта). +
-  - Что у заказчика на уме, то у программиста на языке. +
-  - Не спрашивай старого программиста,​ спрашивай бывалого. +
-  - Лучше с хорошим программистом метку потерять,​ чем с плохим найти. +
-  - Алгоритмический язык до Новосибирска доведёт. +
-  - Хороша верёвка длинная,​ а программа короткая. +
-  - Алгоритмам учиться — всегда пригодится. +
-  - Снявши оператор вывода,​ по ответу не плачут. +
-  - В чужой ВЦ со своим транслятором не ходят. +
-  - Массив не припасёшь — памяти не будет. +
-  - Программу циклом не испортишь. +
-  - Ячейка память бережёт. +
-  - С миру по ячейке — программисту банк данных. +
-  - Лучше микрокалькулятор в руках, чем персональный компьютер в мечтах. +
-  - Кто как программирует,​ так и ест. +
-  - Маленький алгоритм лучше большого безделья. +
-  - Отольются заказчику слезы программиста. +
-  - Дурной FORMAT печати покоя не даёт. +
- +
-<WRAP rightalign>​ --- Б. Медведев </​WRAP>​ +
- +
-===== Фразы ===== +
- +
-Болеющие душой за дело внедрения в школу компьютеров,​ скорее выздоравливайте:​ вы очень нужны! +
- +
-Глобальная учебная цель оправдывает убогие программные средства. +
- +
-"​Где,​ укажите,​ педагогики отцы, которых мы должны принять за образцы?"​ (почти по Грибоедову) +
- +
-Почему портфель ученика стал тяжелее,​ если компьютер призван избавить людей от рутинной работы,​ облегчить школьнику учение?​ +
- +
-<WRAP rightalign>​ --- Т. Драгныш </​WRAP>​ +
- +
-====== XIII.2. Поэзия ====== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-…грянул оглушительный аплодисман.<​WRAP rightalign>​ +
-—//​Ф.М.Достоевский. Бесы//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-1)                                                               +
-<​code>​ +
-Вот БЭСМ, +
-Которой владеет ВЦ. +
-              А это ввод, +
-              Который умеет читать перфорацию,​ +
-              А стало быть, может ввести информацию +
-              В БЭСМ, +
-              Которой владеет ВЦ. +
-А это колода,​ +
-Которую ставят на вход того ввода,​ +
-Который умеет читать перфорацию,​ +
-А стало быть, может ввести информацию +
-В БЭСМ, +
-Которой владеет ВЦ. +
-              А вот лаборантка,​ младая и пышная,​ +
-              Которая карту засунула лишнюю +
-              В большую и важную очень колоду,​ +
-              Которую ставят на вход того ввода,​ +
-              Который умеет читать перфорацию,​ +
-              А стало быть, может ввести информацию +
-              В БЭСМ, +
-              Которой владеет ВЦ. +
-А это АВОСТ,​ +
-К которому путь неизбежен и прост,​ +
-Когда лаборантка,​ младая и пышная,​ +
-Вдруг карту засунет заведомо лишнюю +
-В большую и важную очень колоду,​ +
-Которую ставят на вход того ввода,​ +
-Который умет читать перфорацию,​ +
-А стало быть, может ввести информацию +
-В БЭСМ, +
-Которой владеет ВЦ. +
- +
-</​code>​ +
-<WRAP rightalign>​ --- И.Липкин </​WRAP>​ +
- +
-2) +
-<​code>​ +
-Вот зал, в котором работает JEC +
-              A вот смешной нецветной телевизор,​ +
-              Который является главным призом +
-              В зале, в котором работает JEC. +
-А это парень весёлый,​ пригожий,​ +
-Который буквально лезет из кожи, +
-Чтобы занять нецветной телевизор,​ +
-Который является главным призом +
-В зале, в котором работает JEC. +
-              А это — серьёзная строгая дама, +
-              Которая хочет отладить программу,​ +
-              Которая видеть спокойно не может +
-              Парня, который лезет из кожи, +
-              Чтобы занять нецветной телевизор,​ +
-              Который является главным призом +
-              В зале, в котором работает JEC. +
-А это — шеф и начальник программы,​ +
-Который главнее серьёзной дамы, +
-Которая хочет отладить программу,​ +
-Которая видеть спокойно не может +
-Парня, который лезет из кожи, +
-Чтобы занять нецветной телевизор,​ +
-Который является главным призом +
-В зале, в котором работает JEC. +
-              А вот оператор в голубенькой блузке. +
-              Она начинает перезагрузку… +
-              После чего не работает JEC. +
-               +
-                                    Слова народные +
-                                     +
-Примечание. JEC — терминальная система коллективного пользования на ЕС ЭВМ. +
-</​code>​ +
-====== XIII.3. Словари ====== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Если Вам непонятно какое–то слово в техническом тексте,​ не обращайте на него внимания. Текст полностью сохраняет смысл и без него. +
-<WRAP rightalign>​ +
-—//​А.Блох//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-===== Словарь часто употребляющихся терминов ===== +
- +
-__Программозой__ — эра появления первых программистов. +
- +
-__Программазм__ — увлечение программированием нового начальника отдела программирования. +
- +
-__Депрограммизация__ — никто не программирует,​ кроме программистов,​ и все заняты делом. +
- +
-__Программизация__ — процесс,​ обратный депрограммизации. +
- +
-__Программаж__ — состояние сотрудников в период программизации. +
- +
-__Программариум__ — служебное помещение программистов. +
- +
-__Программодром__ — пространство,​ выделенное для свободного полёта математической мысли, обычно — место для курения в отделе программирования. +
- +
-__Программистика__ — совокупность доктрин,​ утверждающих иррациональную исключительность программирования вообще и необходимость свободного режима работы программистов в частности. +
- +
-__Программурка__ — кошка, обитающая в программариуме. +
- +
-__Программины__ — ритуал сдачи готовой программы. +
- +
-__Программулька__ — доза валерианки или другого напитка,​принимаемая на программинах. +
- +
-__Надпрограммье__ — техническая документация на неработающую программу. +
- +
-__Программотека__ — коллекция макулатурных изданий,​ приобретённая за сданную во Вторсырье программную документацию. +
- +
-__Программиня__,​ __программисс__ — незамужняя программистка. +
- +
-__Суперпрограмма__ — программа,​ написанная во время варки супа. +
- +
-__Суперпрограммистка__ — автор суперпрограммы. +
- +
-__Суперпрограммист__ — человек,​ который под видом программирования отлынивает от домашних дел. +
- +
-__Программыня__ — жена суперпрограммиста. +
- +
-__Программушек__,​ __программушечка__ — дети программистов. +
- +
- +
-===== Ещё один весёлый словарик ===== +
- +
-<WRAP group 99%> +
-<WRAP half column> \\ </​WRAP>​ +
-<WRAP half column><​WRAP justify>​ +
-Главным образом он любил слова, обычно не встречающиеся в словарях.<​WRAP rightalign>​ +
-—//​Г.К.Лихтенберг//​ +
-</​WRAP></​WRAP>​ +
-</​WRAP></​WRAP>​ +
- +
-Приходится констатировать,​ что наш отечественный словарь информатики и вычислительной техники сильно замусорен словами иностранного происхождения,​ чисто техническими или узкоцеховыми терминами,​ а то и просто жаргоном. +
- +
-За примерами далеко ходить не надо: программирование,​ информатика,​ компьютер,​ ассемблер,​ алгоритм,​ дамп, опция, интерфейс,​ драйвер — и так далее и тому подобное. +
- +
-Нами разработан оригинальный понятийный аппарат,​ который нагляден,​ образен и легко доступен для понимания. Предлагаем его Вашему вниманию. +
- +
-//​Жевало//​ — Устройство ввода перфокарт +
- +
-//​Зависало//​ — Операционная система +
- +
-//​Запоминало//​ — ОЗУ +
- +
-//​Казало//​ — Дисплей +
- +
-//​Крутило — запоминало//​ — Диск +
- +
-//​Моргало//​ — Курсор +
- +
-//​Нажимало//​ — Клавиатура +
- +
-//​Пробивало//​ — Перфоратор +
- +
-//​Рисовало//​ — Графопостроитель +
- +
-//​Ругало//​ — Транслятор +
- +
-//​Считало//​ — Процессор +
- +
-//​Ходило — приставало//​ — Пользователь +
- +
----- +
- +
-[<>​] +
- +
- +
-{{tag>​Humor}}+
msx/basic_programming_guide/13.1562224466.txt.gz · Последние изменения: 2019-07-04 10:14 (внешнее изменение)