Уважаемые коллеги - программисты и, прежде всего, учителя и преподаватели!
Требуется ваша критика и ваше соучастие.
Учитель должен уметь и любить свой предмет, верно? Поэтому, приступая к работе учителем информатики в вальдорфской школе «Живой источник», я решил подготовиться: за пять месяцев по-хорошему напряжённой работы спроектировал и написал полностью
русскоязычный учебный язык программирования, который собираюсь использовать в качестве пособия на своих уроках.
Это структурный язык, который в основном следует традициям Паскаля и Ады с некоторыми модернизациями и носит имя «Клаус» в честь выдающегося деятеля компьютерных наук швейцарца Никлауса Вирта - пусть ему будет ещё один маленький прижизненный памятник, помимо астероида :)
Зачем по-русски? Да потому, что так понятнее!
Мне отлично известно, что профессиональные программисты относятся к русскому языку с известной долей снобизма. Могу понять - сам был грешен! - но никак не могу одобрить. Впрочем, я долго думал, как сделать такой синтаксис, чтобы исходный код лаконично и естественно читался на русском языке. Кажется, это в некоторой мере удалось.
Теперь всё готово: интерпретатор и отладочная среда работают под Ubuntu Linux и Windows 10, почти дописано справочное руководство, есть небольшая стандартная библиотека и несколько примеров исходного кода - даже пара древних игр. Тетрис знают все, а кто помнит Понг? А, старички? :)
И теперь мне нужна ваша критика и ваша помощь. Пожалуйста, полюбопытствуйте, попробуйте на зуб, напишите отзывов и сообщений об ошибках. Пожалуйста, используйте в своих учебных программах, если сочтёте достойным. А ежели кто захочет принять участие в разработке - милости прошу!
Исходный код открыт, программное обеспечение распространяется бесплатно по лицензии GNU GPLv3.
Репозиторий проекта:
https://gitflic.ru/project/czaerlag/klauslangТам же ссылки на последнюю версию для Windows и Linux x64.
Если среди ваших читателей есть сведущие люди, буду благодарен за перепечатку. Успех подобных проектов очень зависит от широты круга.
Напоследок небольшой FAQ.
Кто вы такие?
Авторы - профессионалы со стажем свыше 20 лет в сфере промышленной разработки программного обеспечения и более 10 лет в сфере педагогики. Язык Клаус специально разработан нами как учебное пособие для школьников - это полноценный структурный язык программирования, написанный полностью по-русски и с большим вниманием к тому, чтобы исходные тексты программ выглядели «по-человечески».
Почему по-русски?
Потому, что так понятнее. Работая на родном языке, мы можем с первых занятий сфокусироваться на изучении базовых принципов и формировании хороших привычек, не отвлекаясь на плохо знакомые слова. Даже те из учеников, кто хорошо знает английский, свой родной язык всё равно понимают намного лучше - и это крайне важно в начале обучения. В конце концов, зубрёжки детям и без нас хватает!
Зачем вообще учить программировать тех, кто плохо знает английский?
Способности к языкам и способности к программированию - это разные таланты. Поставив учеников перед необходимостью осваивать одновременно два языка - и человеческий, и компьютерный, - мы рискуем потерять тех, кто мог бы стать хорошим инженером. Лучше дать возможность сначала заинтересоваться предметом и понять суть, а лишь затем осваивать все те дополнительные навыки, что понадобятся в реальной работе.
Зачем изучать язык, который в дальнейшем не будет использоваться?
В профессиональной работе используются многие десятки языков и тысячи библиотек функций. Умение быстро освоить новую среду разработки - обязательное требование к любому профессионалу. Именно поэтому мы сделали Клаус - он хорошо спроектирован, лёгок в освоении, и это создаёт первое, самое важное впечатление: программировать - это просто! А дальше - все современные императивные языки похожи, как близнецы: зная один, легко можно выучить ещё десяток других.
Кроме того, общеизвестно, что технологии разработки, платформы, стандарты, методики - всё это меняется до неузнаваемости каждые 5-10 лет. А стало быть, надеяться научить современных школьников языку, который они будут использовать в работе - ложная идея. Научить их мыслить и постоянно учиться - вот правильный подход.
Но английский всё равно необходим любому профессиональному программисту!
Разумеется. Однако, средняя школа - это слишком рано для профориентации. Наверное, не все наши выпускники станут профессионалами в ИТ - и тем не менее, им придётся жить и работать в мире, где понимание принципов программирования необходимо для любого специалиста, чем бы он ни занимался. К тому же, чем раньше дети поймут, что программировать - это просто, тем вероятнее они выберут ИТ в качестве профессии.
А если по-русски, тогда почему “Клаус”? Разве это по-русски?
Это по-немецки. Впрочем, англоязычная Википедия утверждает, что это славянское имя, производное от греческого.
Потому, что так зовут человека, который внёс огромный вклад в развитие компьютерных наук - и, да, мы хотим назвать наш язык в честь этого человека!
P.S. С благодарностью Дмитрию Тарасевичу и Анне Михеевой, без которых этот проект не увидел бы свет.