TEACHING PROGRAMMING AS AN APPROACH TO DEVELOPMENT OF SCHOOL STUDENTS LOGICAL, ABSTRACT AND COMPUTATIONAL THINKING

Cover Page

Abstract


Article considers role of the school course of computer science and its section related to programming in the formation of skills to think logically, the ability to work with abstractions, and readiness for systemic thinking. Existing approaches for bridging the gap between the level of graduate training and the requirements of employers are described. One of the most promising is proposed to be the paradigm of the STEM. Training in the framework of it is focused not only on developing the necessary theoretical knowledge, but on developing practical skills of work with complex technical and information objects from the students, but also on the development of creative, critical and computational thinking. Learning programming is included in the scope of Informatics is an effective way of developing logical and analytical thinking, as based on the study of such basic concepts as algorithmic structures and principles of construction of algorithms. The article focuses on the social aspect of learning programming. The area of computational perspectives includes the skill of outsourcing for tasks. Mastered his disciples formed a group, continuing the joint work in the context of learning other disciplines.


В связи с постепенным переходом к инновационной экономике важность технологического сектора продолжает повышаться. Это означает, что рынок труда продолжит проявлять повышенный спрос в отношении специалистов наукоемких предприятий [15]. Данную тенденцию можно прослеживать в ряде европейских стран и США, где проблема недостатка квалифицированных кадров в начале 2010-х годов достигла своего пика, приведя к смещению акцента образования на подготовку более технико-ориентированных выпускников [11]. Однако, несмотря на это, сохраняющаяся тенденция постоянного увеличения необходимого объема знаний не позволяет говорить о полной ликвидации разрыва между получаемыми и необходимыми для работы знаниями [14]. Актуальность проблемы можно наблюдать в растущем количестве публикаций, связанных с дополнительным образованием, и в появившейся тенденции постоянного обучения на протяжении всей жизни. Недостаточность подготовки наиболее ярко может проявлять себя в ситуациях, когда выпускник поступает на работу, но при этом его уровень подготовки не удовлетворяет требованиям работодателей [8], в связи с чем, все большее количество работодателей берут на стажировку не выпускников, а учащихся старших курсов. Раннее привлечение будущего сотрудника позволяет не тратить ресурсы на дальнейшее переобучение выпускника, а вырастить работника «под себя». Однако у такой тенденции есть и негативная сторона: специалист, поступивший на таких условиях, остается привязан к месту работы, так как имеет узкую специализацию, которая не позволяет ему быть достаточно гибким. Навыки и умения, относящиеся к разделу информатики, в данной связи являются критически необходимыми с точки зрения современного специалиста, так как без них становятся невозможными работа с большими объемами информации, эффективная коммуникация, а также синтез и агрегация знаний из смежных областей. Последние - ключевые компетенции в условиях все большего сближения и взаимопроникновения наук. Некоторые исследователи считают, что причиной разрыва между требованиями работодателей и уровнем знаний выпускников может быть недостаточная подготовка и развитие мышления еще на ступени школьного образования, так как именно она фундаментальна для формирования и развития навыков работы с информацией. Так как именно в этот период начинает оформляться стиль мышления будущего специалиста, критически важным становится развитие описанных мыслительных механизмов. На данный момент уже разработан ряд концепций, призванных улучшить интеграцию ступеней образования и развить необходимые навыки мышления. Одной из наиболее перспективных можно считать парадигму STEM. Важно заметить, что обучение в рамках данной парадигмы ориентированно не только на формирование необходимого багажа теоретических знаний, но и на формирование практических навыков работы со сложными техническими и информационными объектами у обучающихся, а также на развитие творческого, критического и вычислительного мышления [16; 11]. Обучение в STEM парадигме предполагает не только увеличение количества часов для дисциплин, связанных с математикой, физикой и информатикой, но также и введение дополнительной дисциплины STEM, в рамках которой преподаватель проводит интеграцию полученных знаний через погружение в проблемные задачи, тесно связанные с техническим творчеством. Интересно отметить, что некоторые европейские школы экспериментально ввели данный предмет, начиная с первого класса, что позволило учащимся к пятому году уже писать небольшие программы и конструировать несложные механические устройства, используя компьютеризированные средства разработки. Это наглядно демонстрирует высокий потенциал использования STEM парадигмы для подготовки выпускников, обладающих значительно более глубокими знаниями в области технических и информационных систем. Новый стандарт образования Российской Федерации ставит основной целью образования формирование гармоничной и всесторонне развитой личности, развитие же профессиональных навыков предполагается развивать с помощью максимально раннего формирования навыков самостоятельного обучения и повышения творческой составляющей процесса [12]. В связи с этим необходимо отметить, что самостоятельное осознанное обучение невозможно при отсутствии у обучающегося навыков логического и аналитического мышления, таких как сравнение, классификация, обобщение, синтез и декомпозиция, так как для осознанности необходимо планирование деятельности и умение атомизировать цели. Таким образом, для исполнения заложенных в стандарт идей приоритетной задачей для школьных учителей становится формирование данных навыков и развитие специфических механизмов мышления [1; 6; 7]. На данный момент школьная программа не имеет предмета, ставящего своей основной целью развитие именно таких навыков у обучающихся. Процесс развития происходит в рамках всех предметов естественного цикла, однако, говоря об эффективности, необходимо отдельно отметить курс информатики. Обучение программированию, входящее в рамки данного курса, служит эффективным способом развития логического и аналитического мышлений, так как основано на изучении базовых понятий: алгоритмических конструкций и принципов построения алгоритмов. Декомпозиция задачи, проработка ее элементов, синтез решения и формирование алгоритма позволяют не только привить элементы логического мышления, но и сформировать навык планирования деятельности, который необходим для самостоятельного развития личности [2; 9]. Согласно ФГОС второго поколения, формирование только предметных образовательных результатов недостаточно, необходимым становится формирование также личностных и метапредметных результатов, которые невозможно формировать без деятельностной составляющей процесса обучения [10]. С этой точки зрения предмет информатика и в особенности раздел «алгоритмизация и основы программирования» имеют уникальный интегрирующий характер [2], так как при обучении получают развитие познавательные, коммуникативные и знако-символьные универсальные учебные действия. Здесь уместно привести цитату из работы В.С. Леднёва в отношении школьного курса информатики: «Всякий базовый компонент общего образования включается в содержание образования двояко - в виде особого учебного предмета и в виде «вкраплений» во все другие предметы» (см. работу [13]), что можно наблюдать в виде «вкраплений» информационных технологий в курсы других предметов. Более того, использование информационных технологий постепенно становится неотъемлемой частью деятельности человека в современном информационном обществе. Информатика в этом случае позволяет не только вооружить человека навыками, но и сформировать более системное мышление, т.е. научить мыслить критически, вести логически обоснованные доказательства и рассуждения, а также проводить анализ и синтезировать новые знания [3]. Рассматривая вопрос обучения, формирования и синтеза знаний, необходимо также рассмотреть семиотический подход к обучению. Данный подход во многом основан на работах и идеях Пирса, Мориса и де’Соссюра (см. работу [4]), по этой причине он тесно связан с универсализацией знаний. Идея подхода заключается в том, что все области знаний на самом деле имеют единый фундамент, а многие известные закономерности в одной научной дисциплине на самом деле проявляют себя и во многих других. Таким образом, подход к обучению нацелен на формирование универсальных знаний, основанных на глубоком понимании внутреннего устройства систем в целом, а не на создание разрозненного набора специфических знаний к предметной области. В связи с повышением интегрированности современной науки, данный подход постепенно становится все более популярным в области научных исследований, постепенно расширяя или замещая системный, который был основным на протяжении более чем половины века. Применение семиотического подхода при обучении программированию, предполагает изучение абстрактной знако-символьной системы, т.е. сам язык программирования, а не библиотеки доступных для него компонент или же наборы атрибутов - акцент обучения смещается с обучения практическим навыкам на формирование навыков мышления. Это означает, что основной задачей при обучении ставится научение думать в абстрактах, мысленно выстраивать систему, работать с ней и просчитывать последствия вносимых в нее изменений, что согласуется с задачей формирования логического и абстрактного мышления. Проблема разрыва между получаемыми и необходимыми знаниями, описанная ранее, вероятно, имеет решение не в области добавления материала к существующим программам, а в создании обобщающих программ, которые будут позволять учащимся проводить переносы изученного материала между дисциплинами. Наличие такого рода навыков в конечном счете позволяет обучающемуся, с одной стороны, абстрагироваться от конкретной предметной области при изучении других предметов, а с другой, - применять полученные навыки при решении повседневных задач. Изучение самих научных систем, а не их проявлений позволяет обучающимся получить более глубокое понимание закономерностей, на которых основана любая программа или процесс [5]. Важно заметить, что обучение такого рода будет в большей степени сконцентрировано на развитии самого обучающегося, нежели его навыков, что согласуется с требованиями стандарта образования. В связи со все большим проникновением компьютерных технологий в повседневную жизнь в иностранной литературе все чаще встречается термин «вычислительное мышление». Авторами данной концепции являются Винг и Паперт [28]. Основным же ее фокусом является формирование навыков решения проблемных задач через использование научных концепций, таких как итеративность, реинтерпретация и абстрагирование [19; 20; 29]. Подобная форма мышления требует от учащихся «мыслить в рамках нескольких абстракций одновременно», тем самым проводя интеграцию знаний. По мнению Винг вычислительное мышление - одно из фундаментальных форм мышления, и по этой причине включает многие аспекты, необходимые в XXI веке: навык решения творческих задач, критический анализ, алгоритмизация и систематизация [16; 21; 23-25; 27]. Наиболее полное определение системного мышления и принципов его формирования дали в своей работе Бреннан и Резник [19]. Они постулируют, что вычислительное мышление критически необходимо в современном мире, так как все большее количество повседневных задач сейчас требуют работы с информацией, но без вычислительного мышления работа с ней будет неэффективной. Согласно концепции Бреннана-Резника вычислительное мышление можно разделить на три составляющие: вычислительные концепции, вычислительные практики и вычислительные перспективы. Вычислительные концепции - это набор абстрактных элементов, позволяющих структурировать любой процесс. К ним относятся такие понятия, как циклы, ветвления, выбор, параллелизм, реккурентность и переменные. Это наиболее простая составляющая с точки зрения понимания, так как она занимается изучением только самих предметов и их свойств. С точки зрения обучения вычислительные концепции позволяют обучающемуся научиться абстрагироваться и развить аналитические способности. К вычислительным практикам относятся понятия более высокого уровня, описывающие непосредственные процессы, например итеративность, тестирование и отладку, абстрагирование и модуляризацию, повторное использование и адаптирование. Данная составляющая связана с построением процессов, при этом обучающийся должен планировать свою деятельность, логически обосновывать свои действия и анализировать собственную эффективность. Будь то написание программы или же подготовка сочинения, любая деятельность может быть декомпозирована на ряд подзадач - именно этот навык и логика рассуждений будут наиболее ценными результатами изучения вычислительных практик. Область вычислительных перспектив отвечает за метапроцессные понятия, такие как формулировка вопросов, самостоятельный поиск решения, привлечение сторонних ресурсов для решения проблем. Как наиболее широкий и сложный элемент концепции, она включает в себя все процессы, не связанные напрямую с решением некоторой задачи, наиболее важный из них - поиск необходимых ресурсов. Под ресурсами в данном случае может пониматься как информация о составе атрибутов процедуры, так и адрес электронной почты преподавателя, который сможет помочь обучающемуся разобраться с заданием. Рассматривая эту концепцию, можно прийти к выводу, что использование столь абстрактного инструмента, как концепции программирования, позволяет формировать навыки, переносимые между областями знаний [17; 18; 27; 28]. Примером может служить навык самостоятельного поиска решений, который необходим для большинства сотрудников наукоемких предприятий. Однако такого рода обучение не является специализированным и может успешно применяться в широком спектре образовательных программ, так как изучение вычислительных концепций, практик и перспектив обладает высоким интегрирующий потенциалом. Подтверждением этого может служить исследование Моура и Ван Хаттун- Янссена [26], которое наглядно продемонстрировало, что фокусировка курса информатики на практическом программировании позволила не только повысить успеваемость учащихся в рамках курса, но и привело к значительному улучшению качества знаний по другим дисциплинам. Отдельно стоит отметить, что ученики, описывая свой опыт или понятия других дисциплин использовали абстракции программирования или аллюзии на конструкции программ как связующий элемент. Также необходимо упомянуть социальный аспект обучения программированию. Как уже было указано, область вычислительных перспектив включает в себя навык привлечения сторонних ресурсов для решения задач. Освоившие его ученики сформировали устойчивые группы, которые продолжали совместную работу и в рамках других дисциплин [22]. Исходя из ранее сказанного, можно заключить, что на данный момент уже существуют концепции, которые могут позволить в значительной степени уменьшить или полностью ликвидировать разрыв между запросами рынка и предоставляемым уровнем подготовки выпускников. Воплощение данных концепций в жизнь потребует значительной переработки учебных программ, которая должна начаться с первых классов школы, так как именно этот период обучения критически важен для усвоения новых образов мышления. Наиболее перспективным, по мнению автора, с точки зрения привития логического и абстрактного мышления, является начальный курс школьной информатики. Тема «алгоритмизация и основы программирования» должна в значительной мере повысить свою значимость, а возраст обучающихся необходимо понизить до первых классов школы. Подобные изменения возможно применить уже сейчас, ведь на рынке существует множество сред разработки, ориентированных на младший школьный и даже дошкольный возраст. Последнее, что необходимо отметить, - это появление специальной концепции вычислительного мышления, которая в данный момент находит все больше сторонников. Такие видные ученые, как Паперт, Резник, Винг и многие другие сходятся в том, что курс информатики и программирования в ближайшее десятилетие станет одним из наиболее важных в рамках школы, так как он напрямую, а не косвенно воздействует на мышление учащихся.

E M Kagan

Moscow city pedagogical university

Author for correspondence.
Email: eduard.kagan@yandex.ru
Sheremetyevskaya str., 29, Moscow, Russia, 127521

Kagan Eduard Mikhaylovich, graduate student of department of informatics and applied mathematics of institute of mathematics, informatics and natural sciences of the Moscow city pedagogical university.

  • Balzer E., Portnyagin I., Sharipova E. Razvitie logicheskogo myshlenija u uchashhihsja nachal’nyh klassov v sekcii «Robototehnika» pri izuchenii programmirovanija robotov [Development of logical thinking in primary school pupils in the section «Robotics» in the study of robot programming]. Psihologija i pedagogika: metodika i problemy prakticheskogo primenenija [Psychology and pedagogy: methods and problems of practical application]. 2015. No. 47. Pp. 101—105.
  • Bocharova T. Obuchenie osnovam algoritmizacii i programmirovanija v vuze v uslovijah innovacionnoj obrazovatel’noj sredy [learning the basics of algorithmization and programming in conditions of the innovative educational environment in higher school]. Problemy vysshego obrazovanija [Problems of higher education]. 2014. No. 1. Pp. 162—164.
  • Viktorova T. Stanovlenie programmirovanija v kurse informatiki [The emergence of programming in Informatics Education]. Obrazovanie. Nauka. Nauchnye kadry [Science. Scientific personnel]. 2011. No. 4. Pp. 280—284.
  • Grebneva D. Obzor metodicheskih podhodov k obucheniju programmirovaniju v shkole [A review of methodological approaches to teaching programming at school]. Nauchnoe obozrenie. Pedagogicheskie nauki [Scientific review. Pedagogical science]. 2016. No. 3. Pp. 13—27.
  • Grebneva D. Semioticheskij podhod k obucheniju programmirovaniju v shkole [Semiotic approach to learning programming in school]. Sovremennye problemy nauki i obrazovanija [Modern problems of science and education]. 2013. No. 3. Pp. 255.
  • Grigor’ev S.G., Grinshkun V.V. O razrabotke uchebnika «Informatizacija obrazovanija» [On the development of information systems “Informatization of education”]. Vestnik Moskovskogo gorodskogo pedagogicheskogo universiteta. Serija «Informatika i informatizacija obrazovanija» [Bulletin of the Moscow city pedagogical university. “Informatics and Informatization of Education” series]. 2005. No. 4. Pp. 24—28.
  • Grinshkun V.V. Informatizacija kak znachimyj komponent sovershenstvovanija sistemy podgotovki pedagogov [Informatization as an important component of improving the system of training of teachers]. Vestnik Moskovskogo gorodskogo pedagogicheskogo universiteta. Serija «Informatika i informatizacija obrazovanija» [Bulletin of the Moscow city pedagogical university. “Informatics and Informatization of Education” series]. 2014. No. 1 (27). Pp. 15—21.
  • Dacun N., Urazaeva L. Innovacii dlja preodolenija razryva mezhdu IT-obrazovaniem i IT-industriej [Innovation to bridge the gap between IT education and IT-industry]. Aktual’nye problemy razvitija vertikal’noj integracii sistemy obrazovanija, nauki i biznesa: jekonomicheskie, pravovye i social’nye aspekty: materialy III mezhdunarodnoj nauchno-prakticheskoj konferencii [Actual problems of development of vertical integration of education, science and business: economic, legal and social aspects: proceedings of the III international scientific-practical conference]. Voronezh: Voronezhskij centr nauchno-tehnicheskoj informacii, 2015. Pp. 188—193.
  • Eremenko M. Izuchenie temy «Algoritmy» v ramkah vnedrenija novyh obrazovatel’nyh standartov [The study of “Algorithms” in the framework of the implementation of new educational standards]. Nauka i perspektivy [the Science and prospects]. 2015. No. 2. Pp. 4.
  • Mirzoev M. Formirovanie universal’nyh vidov uchebnyh dejstvij na urokah informatiki [The formation of universal educational actions in science lessons]. Informacionnye tehnologii v obrazovanii: materialy IV Vserossijskoj (s mezhdunarodnym uchastiem) nauchno-prakticheskoj konferencii [Information technologies in education: materials of the IV all-Russian (with international participation) scientific-practical conference]. Saratov, 2012. Pp. 44—45.
  • Pirumov A. Kachestvennoe inzhenernoe obrazovanie kak osnova tehnologicheskoj i jekonomicheskoj bezopasnosti Rossii [A quality engineering education as the basis of technological and economic security of Russia]. Vlast’ [Power]. 2015. No. 2. Pp. 61—71.
  • Pronina N.N. Primenenie tehnologii razvitija kriticheskogo myshlenija u obuchajushhihsja 8–9 klassov na urokah informatiki i IKT [Among students of 8–9 classes at lessons of computer science the Use of ICT and technology development critical thinking]. Molodoj uchenyj [Young scientist]. 2014. No. 5. Pp. 24—26.
  • Semakin I. Jevoljucija shkol’noj informatiki [Evolution school of computer science]. Informatika v shkole [computer science in school]. 2011. No. 225. Pp. 2—7.
  • Sitnikov P. Princip politehnizma na urokah informatiki i IKT [The principle of Polytechnical on the lessons of Informatics and ICT]. Informacionnye i pedagogicheskie tehnologii v sovremennom obrazovatel’nom uchrezhdenii [Information and educational technology in modern educational institution]: materialy Mezhdunarodnoj nauchno-prakticheskoj konferencii. Cherepoveck: Cherepoveckij gosudarstvennyj universitet, 2014. Pp. 112—116.
  • Sorokina T. Ot STEM k STEAM-obrazovaniju cherez programmnuju sredu Scratch [From STEM to STEAM education using the Scratch programming environment]. Sovremennye informacionnye tehnologii i IT-obrazovanie [Modern information technologies and IT education]. 2015. No. 11. Pp. 362—366.
  • Chemekov V., Krylov D. STEM — novyj podhod k inzhenernomu obrazovaniju [STEM — a new approach to engineering education]. Vestnik marijskogo gosudarstvennogo universiteta [Bulleten of Mari state University]. 2015. No. 20. Pp. 59—64.
  • Ananiadou K., Claro M. 21st century skills and competences for new millennium learners in OECD countries. 2009.
  • Barr V., Stephenson C. Bringing Computational Thinking to K-12: What is Involved and What is the Role of the Computer Science Education Community? // ACM Inroads. New York, NY, USA, 2011. Vol. 2. No. 1. Pp. 48—54.
  • Brennan K., Resnick M. New frameworks for studying and assessing the development of computational thinking // Proceedings of the 2012 annual meeting of the American Educational Research Association, Vancouver, Canada. 2012. Pp. 1—25.
  • Ioannidou A. Computational Thinking Patterns // Online Submission. 2011.
  • Binkley M. Defining twenty-first century skills // Assessment and teaching of 21st century skills. Springer, 2012. Pp. 17—6.
  • Goel S., Kathuria V. A novel approach for collaborative pair programming // Journal of Information Technology Education. 2010. V. 9. Pp. 183—196.
  • Sengupta P. Integrating computational thinking with K-12 science education using agent-based computation: A theoretical framework // Education and Information Technologies. 2013. V. 18. No. 2. Pp. 351—380.
  • Kafai Y.B., Burke Q. Computer programming goes back to school // Phi Delta Kappan. 2013. V. 95. No. 1. Pp. 61—65.
  • Margolis J., Goode J., Bernier D. The Need for Computer Science // Educational Leadership. 2011. V. 68. No. 5. Pp. 68—72.
  • Moura I.C., Hattum-Janssen N. Teaching a CS introductory course: An active approach // Computers & Education. 2011. V. 56. No. 2. Pp. 475—483.
  • Resnick M. Scratch: programming for all // Communications of the ACM. 2009. V. 52. No. 11. Pp. 60—67.
  • Wing J.M. Computational thinking // Communications of the ACM. 2006. Vol. 49. No. 3. Pp. 33—35.
  • Wing J.M. Computational thinking and thinking about computing // Philosophical transactions of the royal society of London A: mathematical, physical and engineering sciences. 2008. V. 366. No. 1881. Pp. 3717—3725.

Views

Abstract - 331

PDF (Russian) - 145


Copyright (c) 2017 Kagan E.M.

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.