Версия для печати

Писать по-русски

В свой первый рабочий день в наступившем Новом году Президент Российской Федерации В. В. Путин подписал Указ «О проведении года русского языка». В нём отмечается значение русского языка для развития мировой цивилизации. На нём написано множество книг, в том числе об истории, культуре, научных открытиях не только русского, не только народов России, но практически всех народов мира. Сегодня русский язык является родным для 300 млн человек.

Даже в его молчании были грамматические ошибки.
Станислав Ежи Лец

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

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

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

О качестве программной документации

Всё это приводит к тому, что мало кто читает «русскую» (как, впрочем, и любую другую) документацию, потому что почти наверняка знает (судит по себе), что она плохо написана. Поэтому документацию либо не пишут совсем, либо сокращают до минимума.

Я с этим, как могу, борюсь и даже организовал «Движение за открытую проектную документацию». В его рамках студенты кафедры компьютерных технологий выполняют программные проекты, с которыми (включая проектную документацию) можно ознакомиться по адресу http://is.ifmo.ru/projects/. Там же приведены требования к написанию документации.

«Прессингуя» студента, от него (практически силой и за очень большое время) можно добиться нормально написанного документа. При этом может даже создаться впечатление, что он уже почти стал специалистом по написанию технических текстов и в дальнейшем будет писать хорошо, используя, например, выполненную работу как образец. Однако в большинстве случаев так не получается и, оказавшись на «свободе», он опять пишет как Бог на душу положит.

Часто от молодых людей на замечание о безграмотном оформлении ими технической документации приходится выслушивать отговорки о том, что они программисты, а не писатели. И каждый раз, не соглашаясь с ними, привожу слова журналиста Анатолия Аграновского: «Кто плохо пишет, не плохо пишет, а плохо думает», – и говорю им, что если документация написана нелогично и безграмотно, то естественно предположить, что так же написаны и программы.

Молодых программистов это обычно обижает, хотя часто бывает недалеко от истины. Я всегда буду помнить, как один очень хороший и толковый мальчик три года (!) ни шатко, ни валко правил курсовую работу для того, чтобы в ней, как говорил А. П. Чехов, «всё было прекрасно».

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

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

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

Грамотно излагать свои мысли на бумаге – это трудная работа, важность которой многими недооценивается и мало кому нравится, тем более что этому, как уже отмечалось выше, впоследствии практически нигде (в том числе и на работе) не учат.

Много ли дальтоников среди программистов?

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

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

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

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

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

Классик смутился и сказал, что его слова не надо понимать буквально.

Мне кажется, программирование учило логике при его зарождении, когда считалось, что «программист – это математик, умеющий программировать» ( Кронрод А. С. Беседы о программировании.), а машина была доступна с помощью перфокарт всего несколько раз в неделю.

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

Это, естественно, относится не только к диссертациям, но и к любой другой программной работе. Вот что, например, пишет главный редактор практически единственного доступного российского журнала по программированию М. Купаев: «За время своего редакторства я насмотрелся на такое количество уродцев, которого хватило бы на пару питерских Кунсткамер, и ещё осталось бы на несколько курортных выставок».

Еще не все потеряно!

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

P. S. Недавно я обнаружил, что один очень хороший студент-программист в курсовой работе дважды неправильно написал свои инициалы (!)… Я думаю, это связано с тем, что он, как и многие другие программисты, привык к автоматическому обнаружению ошибок в текстах. Хотя выше было отмечено, что даже в этом случае большинство из них на ошибки не реагирует. Если же ошибки не обнаружены, то они, видимо, считают, что их и нет, либо не хотят напрягать свой мозг на поиск такой ерунды.

P. P. S. А на днях в газете «Известия» была информация, что сотрудники аппарата губернатора одной из областей России должны пройти тест на знание русского языка, так как смысл многих подготовленных ими документов из-за неумения писать по-русски не ясен.

Редакция газеты объявляет конкурс под названием «Студенческий фольклор».

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

Материалы присылать на адрес газеты с пометкой «на конкурс».

Анатолий Шалыто, профессор, заведующий кафедрой технологии программирования shalyto@mail.ifmo.ru

Предыдущая статья     Следующая статья