УДК 377.5
DOI: 10.18413/2313-8971-2022-8-4-0-3
Садыкова Ф.Э.
Сервис GitHub как инструмент для формирования компетенций в области программирования_
Московский финансово-промышленный университет «Синергия», ул. Мещанская, д. 9/14, г. Москва, 129090, Россия [email protected]
Статья поступила 13 октября 2022; принята 12 декабря 2022; опубликована 30 декабря 2022
Аннотация. Введение. Определение теоретической и практической значимости исследования обосновывается необходимостью разработки модели обучения программированию, направленной на формирование компетенций в области программирования с использованием актуальных дидактических и программных средств и возможностью внедрения разработанной модели в процесс подготовки специалистов в области программирования. Цель работы: обоснование целесообразности использования сервиса GitHub в изучении программирования и анализ эффективности сервиса в рамках формирования компетенций в области программирования. Материалы и методы. Материалами для исследования стали ФГОС СПО специальности 09.02.07 «Информационные системы и программирование», примерная Основная образовательная программа подготовки специалистов среднего звена, анализ педагогического опыта с целью выявления эффективных практик формирования у студентов компетенций в области программирования. Результаты. Учитывая, выявленные преимущества и недостатки сервиса GitHub, была спроектирована модель обучения программированию с использованием интернет-сервиса GitHub. Эффективность разработанной модели была исследована экспериментально. В результате эксперимента был произведён расчёт коэффициента корреляции рангов, согласно методу Спирмена. Полученный коэффициент корреляции превысил критическое значение для уровня значимости в 1%, что позволило отклонить нулевую гипотезу о сходстве и подтвердить, что исследуемые ранговые показатели связаны положительной корреляционной зависимостью. Следовательно, чем выше у студента результат выполнения практических и контрольных работ, тем выше его уровни формирования компетенций в области программирования. Заключение. Модель обучения программированию с использованием интернет-сервиса GitHub способствует развитию уровня компетенций в области программирования у будущих программистов и позволяет более плодотворно подготовить их к профессиональной деятельности.
Ключевые слова: компетенции; программирование; GitHub; модель обучения; компетенции в области программирования; методы обучения
Информация для цитирования: Садыкова Ф.Э. Сервис GitHub как инструмент для формирования компетенций в области программирования // Научный результат. Педагогика и психология образования. 2022. Т.8. №4. С. 29-42. DOI:
10.18413/2313-8971 -2022-8-4-0-3.
GitHub service as a tool for developing competencies __in the field of programming_
Moscow Financial and Industrial University "Synergy", 9/14, Meshchanskaya Str., 129090, Moscow, Russia [email protected]
Abstract. Introduction. The theoretical and practical significance of the research is justified by the need to develop a programming training model aimed at the formation of competencies in the field of programming using relevant didactic and software tools and the possibility of introducing the developed model into the process of training specialists in the field of programming. The purpose of the work: justification of the expediency of using the GitHub service in the study of programming and analysis of the effectiveness of the service in the framework of developing competencies in the field of programming. Materials and methods. The materials for the study included the Federal State Educational Standard of the Specialty 09.02.07 "Information Systems and Programming", a conceptual Basic educational program for training middle-level specialists, an analysis of pedagogical experience in order to identify effective practices for the formation of students' competencies in the field of programming. Results. Considering the identified advantages and disadvantages of the GitHub service, a programming training model was designed using the GitHub Internet service. The effectiveness of the developed programming learning model using the GitHub service was investigated experimentally. As a result of the experiment, the correlation coefficient of ranks was calculated according to Spearman's method. The resulting correlation coefficient exceeded the critical value for the significance level of 1%. This made it possible to reject the null hypothesis of similarity and confirm that the studied rank indicators are associated with a positive correlation. Consequently, the higher the student's result of practical and control work, the higher his/her levels of competence formation in the field of programming. Conclusion. The model of programming training using the GitHub Internet service really contributes to the development of the level of programming competencies of future programmers, therefore, allows them to prepare more fruitfully for their subsequent professional activities. Keywords: competencies; programming; GitHub; learning model; programming competencies; teaching methods
Information for citation: F.E. Sadykova (2022), "GitHub service as a tool for developing competencies in the field of programming", Research Result. Pedagogy and Psychology of Education, 8 (4), 29-42, DOI: 10.18413/2313-8971-2022-8-4-0-3.
F.E. Sadykova
Введение (Introduction). В современных условиях на фоне антироссийских санкций, когда на рынке труда зафиксирован резкий рост вакансий в IT-сфере, подготовка высококвалифицированных компетентных специалистов данного направления является приоритетной задачей профессиональных образовательных учреждений.
Согласно компетентностному подходу, реализующемуся в соответствии с федеральным государственным образовательным стандартом, модель образовательного процесса должна быть направлена на формирование профессиональных компетенций, взаимосвязанных с требованиями, предъявляемыми к выпускникам современным рынком
труда (Захарова, Боганюк, Воробьева, Павлова, 2020; Круглик, Осадчий, 2019). Реализация такого подхода предусматривает увеличение практической части образовательного процесса с целью формирования профессиональных умений и опыта для дальнейшего применения их в профессиональной деятельности.
Однако, современная система подготовки будущих ^-специалистов в профессиональных образовательных организациях в большей части направлено на получение теоретических знаний, а практические же навыки отрабатываются на программных средствах, утерявших свою актуальность на современном рынке труда. Такие недостатки влияют негативно на уровень сформирован-ности профессиональных компетенций у будущих ^-специалистов, что соответственно ярко сказывается на возможности их трудоустройства и успешности дальнейшей профессиональной деятельности (Гафуанов, Поднебесова, 2020).
Решением вышеобозначенной проблемы может послужить сервис GitHub, набирающий широкую популярность среди современных ^-разработчиков. Сервис представляет собой социальное облако для разработчиков, которое предоставляет возможность хранения кода, совместной разработки проекта, сетевой коммуникации с коллегами, анализа и отслеживания собственных ошибок и процесса деятельности других.
Определение теоретической и практической значимости исследования обосновывается необходимостью разработки модели обучения программированию, направленной на формирование компетенций в области программирования с использованием актуальных дидактических и программных средств и возможностью внедрения разработанной модели в процесс подготовки специалистов в области программирования.
В процессе исследования автором изучена научная и специальная литература, посвященная проблемам преподавания программирования, формирования компетенций в области программирования, подготовки специалистов, компетентностного подхода.
Изучение литературных источников показал, что в них рассматриваются теоретические и практические аспекты улучшения образовательного процесса по изучению программирования, описаны результаты экспериментальной работы по выявлению эффективности существующих и предложенных подходов. Однако, анализ методик показывает, что средства изучения программирования потеряли свою актуальность по отношению к требованиям, предъявляемым рынком труда. Что объясняет необходимость актуализации инструментов подготовки компетентных специалистов в области программирования.
В связи с этим в данной статье автор намечает целью обоснование целесообразности использования сервиса GitHub в изучении программирования и анализ эффективности сервиса в рамках формирования компетенций в области программирования. Для достижения поставленной цели предполагается решение следующих задач:
- определение сущности компетенций в области программирования;
- выявление составляющих компонентов компетенций в области программирования;
- изучение преимуществ и недостатков сервиса GitHub в процессе изучения программирования;
- разработка модели обучения программированию с использованием интернет-сервиса GitHub;
- анализ эффективности применения сервиса GitHub в процессе формирования компетенций в области программирования.
Теоретическая основа (The theoretical basis). Вопросы профессиональной подготовки будущих IT-специалистов, в частности компетентных программистов, являются предметом исследования многих современных научных деятелей. При проведении настоящего исследования были изучены вопросы формирования компетенций в области программирования в трудах В.Н. Лукина (Лукин, 2017), А Р. Толстова, А О. Копань, Л.И. Красноплахтовой (Толстов, Копань, Красноплахтова, 2019), Шефер О.П., Носовой Л.С., Лебедевой Т.Н. (Shefer, Nosova,
Lebedeva, 2018), В. Либ (Либ, 2015), Д.С. Гладских, А.А. Штанюк (Гладских, Штанюк, 2015), Крючкова А.С., Кухарчук А.А., Фукс Д.Е. (Крючков, Кухарчук, Фукс, 2016), Торрес М., Флорес Н., Торрес Р. (Torres, Flores, Torres, 2020), А.И. Лапо (Лапо, 2020), Н.Н. Хабарова, С.В. Даниленко, Ю.М. Мартынюк, В.С. Ваньковой (Хабаров, Даниленко, Мартынюк, Ванькова, 2021), Каган Е.М. (Kagan, 2017), Каплан А., Павлова Д., Мурадова М. (Kaplan, Pavlov, Myradov, 2020) и др.
Проблемам обучения программированию и подготовке компетентных специалистов посвящена работа В .Н. Лукина. Автор в своей работе рассматривает варианты решения проблемы обучения программированию с учётом компетенций, профессиональных стандартов, стандартов качества программного обеспечения. При изучении программирования предлагается подход, направленный на формирование профессиональных навыков. Автор так же касается компетентност-ного подхода при изучении программирования и отмечает, что продиктованные в образовательных стандартах формулировки компетенций являются формальными единицами оценки эффективности обучения и при таком подходе следует уделять особое внимание содержанию этих единиц. А при отсутствии средств диагностики уровня сфор-мированности компетенций их нельзя качественно проконтролировать. Как отмечает В. Н. Лукин, для подготовки компетентных специалистов необходимо акцентировать внимание на качестве программных продуктов. И следующий момент, играющий важную роль в подготовке компетентных программистов, - это необходимость обеспечить углубленную практическую деятельность обучающихся (Лукин, 2017).
Немного иной подход предлагается в труде А.Р. Толстова, А.О. Копань, Л.И. Крас-ноплахтовой. Как считают авторы, важная задача преподавателя программирования заключается в том, чтобы сформировать у обучающихся потребность самостоятельно изучать дополнительный материал по программированию. Но при этом необходимо обязательно обеспечить обучающимся условия и
возможности закреплять полученный самостоятельно материал на практике (Толстов, Копань, Красноплахтова, 2019).
Наиболее подробно раскрыты проблемы формирования компетенций по программированию В. Либ. На взгляд автора, проблема связана с тем, что изучение «Программирования» в профессиональных образовательных учреждениях, как правило, заключается в разборе того или иного языка программирования на примере несложных интуитивно понятных алгоритмов. И это, как следствие, влечет возникновение проблемы с востребованностью таких специалистов. Как отмечает автор, на современном рынке труда большей востребованностью пользуются специалисты, обладающие умением программирования сложных систем и навыками применения при этом современных технологий. Что, в свою очередь, лишает выпускников возможности рассматривать свои кандидатуры в качестве перспективных сотрудников на предложенных должностях (Либ, 2015).
При проведении настоящего исследования была изучена научная литература по методам решения возникающих проблем при формировании компетенций в области программирования (Balandina, Lebedeva, Milyutina, Moskvitina, Shefer, Shiganova, Yuzdova, 2020; Karimov, Rajapboeva, Ortikov, Babajanov, 2022). Так, например, в труде А. Джаяль, С. Лория, А. Такер, С. Свифт представлены результаты экспериментального исследования, направленного на обоснование оптимального подхода к изучению программирования. Путем проведения анализа полученных данных и статистических расчетов, ученые доказали эффективность обучения программированию с опорой на язык Python с последующим переходом языку Java (Jayal, Lauria, Tucker, Swift, 2010).
А.С. Крючков, А.А. Кухарчук, Д.Е. Фукс в своей статье показывают возможности формирования и совершенствования профессиональных компетенций будущих программистов решение сложных задач путем алгоритмизации этапов решения. По мнению авторов, при комплексном поэтапном решении такого рода задач у студентов
формируются профессиональные компетенции, способствующие реализации их дальнейшей профессиональной деятельности (Крючков, Кухарчук, Фукс, 2016).
Таким образом, в процессе исследования автором изучена научная и специальная литература, посвященная проблемам преподавания программирования, формирования компетенций в области программирования, подготовки IT-специалистов, компетент-ностного подхода. Изучение литературных источников показал, что в них рассматриваются теоретические и практические аспекты улучшения образовательного процесса по изучению программирования, описаны результаты экспериментальной работы по выявлению эффективности существующих и предложенных подходов. Однако, анализ методик показывает, что средства изучения программирования потеряли свою актуальность по отношению к требованиям, предъявляемым рынком труда. Что объясняет необходимость актуализации инструментов подготовки компетентных специалистов в области программирования.
Методология и методы (Methodology and methods). Подготовка специалистов в области программирования осуществляется в Межрегиональном центре компетенций -Чебоксарский электромеханический колледж Минобразования Чувашии в реализации специальности 09.02.07 «Информационные системы и программирование» по квалификации «Программист».
Материалами для исследования стали ФГОС СПО специальности 09.02.07 «Информационные системы и программирование», примерная Основная образовательная программа подготовки специалистов среднего звена, анализ педагогического опыта с целью выявления эффективных практик формирования у студентов компетенций в области программирования (Асейнова, 2022; Асейнова, Хрисанова 2020).
Сущность, перечень и составляющие компоненты компетенций в области программирования были определены в соответствии с ФГОС СПО специальности 09.02.07
«Информационные системы и программирование», формулировки которых представлены на рис. 1.
Изучив Примерный учебный план по программе подготовки специалистов среднего звена для квалификации «Программист», необходимо выделить, что на практическую часть образовательного процесса отводится всего 76 часов из общих предложенных 152, что составляет 50% от общего объема образовательной программы и является недостаточным для эффективного овладения всеми профессиональными навыками.
Из вышесказанного можно сделать вывод, что система подготовки будущих программистов в большей части направлено на получение теоретических знаний. Кроме того, опыт преподавания программирования показывает, что практические навыки обучающихся отрабатываются на программных средствах, утерявших свою актуальность на современном рынке труда. Такие недостатки влияют негативно на уровень сформирован-ности профессиональных компетенций у будущих программистов, что, соответственно, ярко сказывается на возможности их трудоустройства и успешности дальнейшей профессиональной деятельности.
Решением выше обозначенной проблемы может послужить сервис GitHub, набирающий широкую популярность среди современных IT-разработчиков.
GitHub - это многофункциональный сервис, представляющий собой социальное облако для разработчиков, которое предоставляет возможность хранения кода, совместной разработки проекта, сетевой коммуникации с коллегами, анализа и отслеживания собственных ошибок и процесса деятельности других.
Данный интернет-сервис позволяет позаимствовать коды других разработчиков для изучения их опыта или для самостоятельной тренировки в разработке проектов. Кроме того, с помощью сервиса можно создать собственный продукт, найти множество open-source проектов, поделиться собственным продуктом для оценки своей деятельности или для получения помощи коллег
в проблемных ситуациях. GitHub является комплексным инструментом, содержащим передовые технологии, множество различных функций и дизайнов. Сервис поддерживает огромное количество передовых языков программирования, таких как Python, Java,
C#, C++, TypeScript и др (Chacon, Straub, 2022). Еще одно преимущество сервиса в том, что он позволяет любому пользователю участвовать в других проектах и совместно работать над их разработками огромному количеству участников одновременно.
s
s
я
a
M
S
S
h
S
a
о
u
4
a
__
л
Cû
о
s
u
О
Л
s
s
ч z.
e os
s s
я s
u a
S ca
et о
« о S a s S
Ю s
<u a
T &
^ u
CR о
S a
s С
<u s
о
ca
u
о
S
a
h
a
h
Л
^
M
<u
a
a
as
s
s
a
ca
о
ю
<u
a
H
Общие компетенц ии
ОК 01. Выбирать способы решения задач профессиональной деятельности, применительно к различным контекстам.
ОК 02. Осуществлять поиск, анализ и интерпретацию информации, необходимой для выполнения задач профессиональной деятельности.
ОК 04. Работать в коллективе и команде, эффективно взаимодействовать с коллегами, руководством, клиентами.
ОК 05. Осуществлять устную и письменную коммуникацию на государственном языке с учетом особенностей социального и культурного
контекста.
ОК 09. Использовать информационные технологии в профессиональной
деятельности.
ОК 10. Пользоваться профессиональной документацией на государственном и
иностранном языке.
ПК 1.1. Формировать алгоритмы разработки программных модулей в соответствии с техническим заданием.
ПК 1.2. Разрабатывать программные модули в соответствии с техническим
заданием.
ПК 1.3. Выполнять отладку программных модулей с использованием специализированных программных средств.
ПК 1.4. Выполнять тестирование программных модулей.
ПК 1.5. Осуществлять рефакторинг и оптимизацию программного кода.
ПК 2.4. Осуществлять разработку тестовых наборов и тестовых сценариев для
программного обеспечения.
ПК 2.5. Производить инспектирование компонент программного обеспечения на предмет соответствия стандартам кодирования.
Рис. 1 Компетенции в соответствии с ФГОС СПО специальности 09.02.07 «Информационные
системы и программирование» Fig. 1 Competences in accordance with the Federal State Educational Standard of secondary vocational education of the Specialty 09.02.07 «Information systems and programming»
Изучив данный сервис, можно выделить ряд преимуществ и недостатков сервиса GitHub в процессе изучения программирования.
Преимущества сервиса GitHub, как инструмента формирования компетенций в области программирования, представлены в табл. 1.
Таблица 1
Преимущества сервиса GitHub, как инструмента формирования компетенций
в области программирования
Table 1
Advantages of the GitHub service as a tool for building competencies in the field of programming
Преимущества сервиса GitHub Примечания Компетенции в области программирования
Поддержка большого количества языков программирования, интеграция с другими сторонними сервисами Позволяет обучающимся самостоятельно выбрать язык для разработки своих проектов, либо изучать сразу несколько языков программирования ОК01, ОК09, ПК1.1, ПК1.2, ПК1.3, ПК1.4, ПК1.5, ПК2.4, ПК2.5
Возможность получения кода готового проекта или части проекта Позволяет изучить опыт коллег или исправить собственные ошибки ОК02, ОК04, ПК1.1, ПК1.2, ПК1.3, ПК1.4, ПК1.5, ПК2.4, ПК2.5
Совместная работа над проектом, возможность объединения репозиторий участников Позволяет любому пользователю участвовать в других проектах и совместно работать над их разработками огромному количеству участников одновременно. Кроме того, GitHub выдает информацию о том, кем из участников процесса были внесены изменения в проект ОК04, ПК1.1, ПК1.2, ПК1.3, ПК1.4, ПК1.5, ПК2.4, ПК2.5
Встроенное управление цветом кода: все последние обновления синтаксически подкрашиваются зеленым цветом в командной строке, и удаленный в последней сессии тест подкрашивается красным текстом Для преподавателя: определить, что конкретно было сделано студентом за определенный период времени. Для студентов: удобство при совместной работе над проектом ОК02, ОК04, ОК09, ОК10, ПК1.1, ПК1.2, ПК1.3, ПК1.4, ПК1.5, ПК2.4, ПК2.5
Возможность назначать код-ревьюером любого участника команды при совместной работе Способствует развитию навыков не только корректного написания собственной программы, но и умениям проверки чужого кода ОК02, ОК04, ПК1.1, ПК1.2, ПК1.3, ПК1.4, ПК1.5, ПК2.4, ПК2.5
Возможность ретроспективного и компаративного редактирования текстов Дает возможность вернуться к предыдущей версии работы, даже сохраненной долгое время назад ПК1.3, ПК1.4, ПК1.5, ПК2.4
Возможность общения Позволяет комментировать правки друг друга, а также следить за новостями коллег ОК04, ОК05, ОК09
Недостатков сервиса GitHub не так много:
1) отсутствие русскоязычного интерфейса;
2) необходимость дополнительного обучения навыкам пользования сервисом, т.к. интерфейс непростой для новичков;
3) есть ограничения по предоставляемому пространству в бесплатной версии, т.к. размер одного файла не должен превышать 100 МБ, в то время как репозитории ограничены 1 ГБ (Guthals, 2019).
Как видно, недостатки сервиса нельзя назвать значительными, т.к. все пункты легко исправимы в образовательном процессе.
Научные результаты и дискуссия (Research Results and Discussion). Учитывая, выявленные преимущества и недостатки сервиса GitHub, была спроектирована модель обучения программированию с использованием интернет-сервиса GitHub, которая представлена на рис. 2.
За основу модели была взята «Модель обучения программированию на основе семиотического подхода», предложенная Д.М. Гребневой (Гребнева, 2014). Согласно этому в разработанной модели выделены пять блоков: методологический, целевой, содержательный, диагностический и результативный.
Разработанная модель обучения программированию основана на следующих аспектах:
1. Основная идея рассматриваемого подхода к обучению программированию -упор на возможности интернет-сервиса GitHub и прямая направленность на формирование каждой компетенции.
2. Системное соблюдение дидактических принципов, связь принципов обучения с возможностями сервиса GitHub.
3. Разбиение основной цели на несколько задач, заключающихся, непосредственно, в формировании компетенций в области программирования.
4. Установление конкретных требований к организации учебного процесса,
направленного в большей степени на практическое изучение программирования с использованием сервиса GitHub.
5. Выделение критериев, методов и средств диагностики уровня сформирован-ности компетенций в области программирования.
6. Определение в качестве результатов освоения дисциплины уровни сформиро-ванности компетенций по соответствующей шкале.
Построенная модель обучения программированию позволила выявить и рассмотреть связи между дидактическими блоками образовательного процесса, определить задачи и средства достижения поставленной цели - повышение эффективности обучения программированию.
Эффективность разработанной модели обучения программированию с использованием сервиса GitHub была исследована экспериментально.
Экспериментальная работа проводилась при внедрении в курс «Основы алгоритмизации и программирования» на базе Межрегионального центра компетенций - Чебоксарский электромеханический колледж. Для подтверждения эффективности применения описанных принципов обучения программированию было необходимо произвести оценку результатов обучения для студентов специальности 09.02.07 «Информационные системы и программирование». Были взяты 2 группы второго курса данной специальности, которые были определены как контрольная и экспериментальная группы (Гимра-нова, 2018).
В результате эксперимента был произведён расчёт коэффициента корреляции рангов, согласно методу Спирмена (Бартов, Зотов, 2016), который позволил определить степень связи между оценками, полученными обучающимися экспериментальной группы за выполнение практических и контрольных работ (построенных в соответствии с описанными принципами обучения программированию) и за выполнение итогового проекта.
Принципы обучения программированию с использованием сервиса GitHub:
1. Принцип обучения конструированию программ на готовых образцах проектов, на опыте коллег, благодаря богатой базе проектов GitHub и возможности доступа к ним.
2. Принцип доказательного программирования, когда программа строится вместе с доказательством ее правильности, чему способствует поддержка системы отслеживания ошибок GitHub.
3. Принцип пошаговой разработки программ, когда программа строится из формальной спецификации задачи с помощью мелких формально проверяемых шагов преобразования.
4. Принцип модульного программирования, позволяющий проектировать, разрабатывать и собирать программу по частям благодаря широким возможностям Git объединять разные репозитории.
Цели обучения: обучение программированию студентов. Задачи:
1. Формирование общих компетенций;
2. Формирование профессиональных компетенций.
Требования к организации учебного процесса:
Теоретические занятия:
Объем образовательной программы: 30%. Структуризация теоретического материала для максимального облегчения восприятия.
Практические занятия:
Объем образовательной программы: 70%. Внедрение сервиса GitHub для выполнения практических заданий.
Самостоятельная работа:
Предоставление условий для самостоятельного программирования на GitHub, обозначение дополнительной литературы, дополнительных заданий.
к
о
«
Ю
й
и
к rJ
с
е Ц
V
и
H
с
о
н
и
c3
и
Критерии:
1. уровень формирования общих компетенций;
2. уровень формирования профессиональных компетенций.
Методы контроля:
1. наблюдение и беседы;
2. диагностика учебной мотивации;
3. тестирование и контрольные работы;
4. проектная деятельность.
Средства контроля:
1. интернет-сервисы для тестирования;
2. проектные работы;
3. задания для контрольных работ;
4. сервис GitHub;
5. матрица сформированности компетенций.
■ в к
и
H о
a «
H ю
Л ч й
^ ы
з е н
Рч
Уровни сформированности компетенций:
1. низкий;
2. средний;
3. высокий.
Рис. 2. Модель обучения программированию с использованием сервиса GitHub Fig. 2. Programming learning model using the GitHub service
В табл. 2 представлены результаты ран- рангов, квадратов разностей между рангами
жирования позиций, определения разности и нахождения общей суммы.
Таблица 2
Данные для расчёта коэффициента корреляции рангов, согласно методу Спирмена
Table 2
Data for calculating the correlation coefficient of ranks, according to the Spearman method
№ Результат выполнения практических и контрольных работ Результат выполнения итогового проекта Ранг X, dx Ранг Y, dy Разность рангов, d Квадрат разности между рангами, d2
1. 100 96 1 2 -1 1
2. 97,2 96 2 2 0 0
3. 97 94 3 4 -1 1
4. 96 96 5 2 3 9
5. 96 91 5 7 -2 4
6. 96 91 5 7 -2 4
7. 95,8 90 7 9 -2 4
8. 94 90 8 9 -1 1
9. 93,9 91,2 9 5 4 16
10. 93,5 91 10 7 3 9
11. 91 90 11 9 2 4
12. 90 85 12 16 -4 16
13. 89,5 87 13 14 -1 1
14. 89 84 14 18 -4 16
15. 88 89 16 12 4 16
16. 88 86 16 15 1 1
17. 88 88 16 13 3 9
18. 85 80 18 20 -2 4
19. 83 84 19 18 1 1
20. 81 79 20 21 -1 1
21. 80,2 84 21 18 3 9
22. 79 78 22 22 0 0
Сумма 127
Вычисление коэффициента корреляции рангов выполняется по формуле:
1 А
п3
п
где п - количество участников эксперимента (Шишлянникова, 2009).
Выполнив подстановку данных значений в формулу, получено эмпирическое значение коэффициента корреляции рангов: р*0,928.
Критические значения коэффициентов корреляции для числа испытуемых п=22, взятые из таблицы, показывают:
_ [0,423 (р < 0,05) Ркр ~ {0,537 (р < 0,01) Полученный коэффициент корреляции превышает критическое значение для уровня значимости в 1%. Это свидетельствует о необходимости отклонить нулевую гипотезу о сходстве и принять альтернативную гипотезу о наличии различий, которая говорит о том,
что связь между исследуемыми показателями статистически значимо отличается от нуля. Поэтому можно утверждать, что исследуемые ранговые показатели связаны положительной корреляционной зависимостью, следовательно, чем выше у студента результат выполнения практических и контрольных работ, тем выше его уровни формирования компетенций в области программирования.
Заключение (Conclusions). Таким образом, в ходе настоящего исследования были решены следующие задачи:
- Определены составляющие компоненты компетенций в области программирования. Данные компетенции были рассмотрены согласно ФГОС СПО специальности 09.02.07 «Информационные системы и программирование».
- Изучены преимущества и недостатки сервиса GitHub в процессе изучения программирования. Среди основных преимуществ сервиса можно отметить: поддержку большого количества языков программирования, интеграцию с другими сторонними сервисами; возможность получения кода готового проекта или части проекта; возможность совместной работы над проектом и объединения репозиторий участников; возможность ретроспективного и компаративного редактирования текстов и др. Выделение положительных качеств сервиса позволило описать схему преимуществ сервиса GitHub, как инструмента формирования компетенций в области программирования.
- Разработана модель обучения программированию с использованием интернет-сервиса GitHub, которая позволила выявить и рассмотреть связи между дидактическими блоками образовательного процесса, определить задачи и средства достижения поставленной цели - повышение эффективности обучения программированию.
- Экспериментально исследована эффективность применения сервиса GitHub в процессе формирования компетенций в области программирования. Результаты экспериментальной деятельности показали, что модель обучения программированию с ис-
пользованием интернет-сервиса GitHub действительно способствует развитию уровня компетенций в области программирования у будущих программистов, следовательно, позволяет более плодотворно подготовить их к последующей профессиональной деятельности.
Все эти задачи способствовали достижению цели исследования - обосновать целесообразность использования сервиса GitHub в изучении программирования и проанализировать эффективность сервиса в рамках формирования компетенций в области программирования.
Список литературы
Асейнова Ф.Э. Методы формирования компетенций в области программирования у будущих программистов в профессиональных образовательных организациях // Primo Aspectu. 2022. № 1(49). С. 74-78. DOI: 10.35211/25002635-2022-1-49-74-78.
Асейнова Ф.Э., Хрисанова Е.Г. Применение цифровых технологий в профессиональной подготовке программистов в образовательных учреждениях среднего профессионального образования // Современные наукоемкие технологии. 2020. № 10. С. 120-124. DOI: 10.17513/snt.38265.
Бартов А.Д., Зотов А.И. Анализ результатов рубежного контроля (рейтинга) с использованием метода ранговой корреляции Спирмена // Молодой исследователь Дона. 2016. №1. URL: https: // cyberlenmka.ru/artide/n/anaHz-rezultatov-rubezhnogo-kontrolya-reytinga-s-ispolzovaniem-metoda-rangovoy-korrelyatsii-spirmena (дата обращения: 06 October 2022).
Гафуанов Я.Ю., Поднебесова Г.Б. Оценка уровня сформированности компетенций будущих учителей информатики и IT-специалистов в области программирования // Современные проблемы науки и образования. 2020. № 1. URL: https://science-
education.ru/ru/article/view?id=29539 (дата обращения: 06.10.2022).
Гимранова Ф.Э. Экспериментальная апробация программного комплекса на основе интернет-сервисов для обучения программированию студентов учреждений среднего профессионального образования // Вестник Чувашского государственного педагогического университета им. И.Я. Яковлева. 2018. №3(99). С. 163-169.
Гладских Д.С., Штанюк А.А. О проблемах формирования компетенций в области программирования у бакалавров IT-направления // Информатика и образование. 2015. № 5. URL: https://www.kstu.kz/wp-content/up-loads/2015/09/Informatiki-i-obrazovanie_2015_5 -264_71.pdf (дата обращения: 06.10.2022).
Гребнева Д.М. Модель обучения программированию учащихся 7-9 классов на основе семиотического подхода // Педагогическое образование в России. 2014. №7. URL: https://cyberleninka.ru/article/n/model-obucheniya-programmirovaniyu-uchaschihsya-7-9-klassov-na-osnove-semioticheskogo-podhoda (дата обращения: 05.10.2022).
Захарова И.Г., Боганюк Ю.В., Воробьева М.С., Павлова Е.А. Диагностика профессиональной компетентности студентов ИТ-направлений на основе данных цифрового следа // Информатика и образование. 2020. № 4 (313). С. 4-11.
Круглик В.С., Осадчий В.В. Формирование компетентности в области программирования у будущих инженеров-программистов // Интеграция образования. 2019. №4 (97). URL: https: //cyberleninka.ru/article/n/formirovanie -kompetentnosti-v-oblasti-programmirovaniya-u-buduschih-inzhenerov-programmistov (дата обращения: 30.09.2022).
Крючков А.С., Кухарчук А.А., Фукс Д.Е. Формирование компетенций программиста на примере решения олимпиадных задач // Современные научные исследования и инновации. 2016. №3. URL: https: // web.snauka.ru/issues/2016/03/64956 (дата обращения: 05.10.2022).
Кузенкова Г.В., Штанюк А.А., Шагбазян Д.В. Обучение программированию в средней и высшей школе: проблемы и пути решения // Современные проблемы науки и образования. 2021. №1. URL: https: // science-education.ru/ru/arti-cle/view?id=30514 (дата обращения: 05.10.2022).
Лапо А.И. Компетентностный подход в обучении учащихся программированию // Педагогика информатики. 2020. №1. URL: https://pcs.bsu.by/2020_1/2ru.pdf (дата обращения: 05.10.2022).
Либ В.О проблемах формирования компетенций в области программирования у бакалавров IT-направления // Педагогический опыт. 2015. № 5. С. 227-228.
Лукин В.Н. Подготовка качественных программистов: проблемы обучения // Моделирование и анализ данных. 2017. №1. С. 29-41.
Толстов А.Р., Копань А.О., Красноплах-това Л.И. Основные проблемы обучения программированию в вузах // Colloquium-Journal. 2019. № 13-2(37). С. 227-228.
Хабаров Н.Н., Даниленко С.В., Мартынюк Ю.М., Ванькова В.С. Формирование компетенций в области программирования у обучающихся по направлению подготовки «Математическое обеспечение и администрирование информационных систем» // Бизнес. Образование. Право.
2021. № 2 (55). С. 386-392. DOI: 10.25683/V0LBI.2021.55.230.
Шишлянникова Л.М. Применение корреляционного анализа в психологии // Психологическая наука и образование. 2009. № 1. С. 98-107. URL: https: //
psyjournals.ru/psyedu/2009/n1/Shishlyannikova_fUl l.shtml (дата обращения: 06.10.2022).
Balandina I., Lebedeva T., Milyutina A., Mos-kvitina T., Shefer O., Shiganova G., Yuzdova L. Formation of IT competency while teaching school students // ICERI2020. 2020. P. 9644-9649. DOI: 10.21125/iceri.2020.2154.
Chacon S., Straub B. Pro Git. New York: Apress, 2022.
Gimranova F.E., Yarullin D.N. Features of formation of digital competence at students of secondary professional education // INTED2020 Proceedings. 2020. P. 8597-8600. DOI: 10.21125/inted.2020.2340.
Guthals S. GitHub For Dummies Cheat Sheet. Hoboken: Learning made easy, 2019.
Hamdamova Sevara N.Q. The role of programming education in teaching physics // SAI.
2022. №B2. URL: https://cyberleninka.ru/arti-cle/n/the-role-of-programming-education-in-teach-ing-physics (дата обращения: 06.10.2022).
Jayal A., Lauria S., Tucker A., Swift S. Python for Teaching Introductory Programming: A Quantitative Evaluation // Innovation in Teaching and Learning in Information and Computer Sciences. 2011. № 10(1). P. 86-90. DOI: https://doi.org/10.11120/ital.2011.10010086.
Kagan E.M. Teaching programming as an approach to development of school students logical, abstract and computational thinking // RUDN Journal of Informatization in Education. 2017. Vol. 14(4). P. 442-451. DOI: 10.22363/2312-8631-201714-4-442-451.
Kaplan A., Pavlov D., Myradov M. Features of Using Kodu Game Lab in Teaching Programming in Elementary School // Mathematics and Informatics. No 6(1). 2020. P. 9-23. URL: https://az-
buki.bg/wp-content/up-
loads/2020/02/Math_Info_1_Kaplan_Pavlov_Myra-dov.pdf (дата обращения: 06.10.2022).
Karimov D., Rajapboeva S., Ortikov B., Ba-bajanov B. Developing and using applicable software in teaching web programming, Computer graphics // Topical issues of modern science and education. 2022. P. 107-109. URL: https://eli-brary. ru/download/eli-
brary_49239116_88630196.pdf (дата обращения: 06.10.2022).
Shefer O.P., Nosova L.S., Lebedeva T.N. A Modern Methodology for Teaching Programming at a University // Scientific and Technical Information Processing. 2018. No 45(2). Р. 81-86.
Torres M., Flores N., Torres R. Fostering Soft and Hard Skills for Innovation Among Informatics Engineering Students - an Emancipatory Approach // Journal of Innovation Management. 2020. № 8(1). P. 20-38. DOI: 10.24840/2183-0606_008.001_0004.
References
Aseynova, F.E. (2022), "Methods of forming competencies in the field of programming for future programmers in professional educational organizations", Primo Aspectu, 1(49), 74-78. DOI: 10.35211/2500-2635-2022-1-49-74-78. (In Russian).
Aseynova, F.E. and Khrisanova, E.G. (2020), "Application of digital technologies in professional training of programmers in educational institutions of secondary vocational education", Modern hightech technologies, 10, 120-124. DOI: 10.17513/snt.38265. (In Russian).
Bartov, A.D. and Zotov, A.I. (2016), "Analysis of the results of boundary control (rating) using the Spearman's rank correlation method", Young researcher of the Don, 1. Available at: https://cyber-leninka.ru/article/n/analiz-rezultatov-rubezhnogo-kontrolya-reytinga-s-ispolzovaniem-metoda-rangovoy-korrelyatsii-spirmena (Accessed 6 October 2022). (In Russian).
Gafuanov, Y.Y. and Podnebesova, G.B. (2020), "Assessment of the level of competence formation of future computer science teachers and IT specialists in the field of programming", Modern problems of science and education, 1. Available at: https: //science -education.ru/ ru/ arti-cle/view?id=29539 (Accessed 06 October 2022). (In Russian).
Gimranova, F.E. (2018), "Experimental testing of a software package based on Internet services for teaching programming to students of secondary
vocational education institutions", Bulletin of Ya-kovlev Chuvash State Pedagogical University, 3(99), 163-169. (In Russian).
Gladskikh, D.S. and Shtanyuk, A.A. (2015), "On the problems of formation of competencies in the field of programming for bachelors of IT-direction", Informatics and education, 5. Available at: https: //www .kstu.kz/wp-content/up-loads/2015/09/Informatiki-i-obrazovanie_2015_5-264_71.pdf (Accessed 06 October 2022). (In Russian)
Grebneva, D.M. (2014), "A model of teaching programming to students of grades 7-9 based on a semiotic approach", Pedagogical education in Russia, 7. Available at: https: // cyberleninka.ru/arti-cle/n/model-obucheniya-programmirovaniyu-uchaschihsya-7-9-klassov-na-osnove-semiotich-eskogo-podhoda (Accessed 05 October 2022). (In Russian).
Zakharova, I.G., Boganyuk, Y.V., Vorobyeva, M.S. and Pavlova, E.A. (2020), "Diagnostics of professional competence of students of IT directions based on digital footprint data", Informatics and education, 4(313), 4-11. (In Russian).
Kruglik, V.S. and Osadchy, V.V. (2019), "Formation of competence in the field of programming among future software engineers", Integration of education, 4 (97). Available at: https://cyber-leninka.ru/article/n/formirovanie-kompetentnosti-v-oblasti-programmirovaniya-u-buduschih-inzhen-erov-programmistov (Accessed 30 September 2022). (In Russian).
Kryuchkov, A. S., Kukharchuk, A. A. and Fuchs, D. E. (2016), "Formation of programmer competencies by the example of solving Olympiad problems", Modern scientific research and innovation, 3. Available at: https://web.snauka.ru/is-sues/2016/03/64956 (Accessed 30 September 2022). (In Russian).
Kuzenkova, G.V., Shtanyuk, A.A. and Shag-bazyan, D.V. (2021), "Teaching programming in secondary and higher schools: problems and solutions", Modern problems of science and education, 1. Available at: https://science-education.ru/ru/arti-cle/view?id=30514 (Accessed 05 October 2022). (In Russian).
Lapo, A.I. (2020), "Competence approach in teaching students programming", Pedagogy of computer science, 1. Available at: https://pcs.bsu.by/2020_1/2ru.pdf (Accessed 05 October 2022). (In Russian).
Lib, V. (2015), "About the problems of formation of competencies in the field of programming
for bachelors of the IT direction", Pedagogical experience, 5, 227-228. (In Russian).
Lukin, V.N. (2017), "Training of high-quality programmers: problems of training", Modeling and data analysis, 1, 29-41. (In Russian).
Tolstov, A.R., Kopan, A.O. and Krasnoplakh-tova, L.I. (2019), "The main problems of teaching programming in universities", Colloquium-Journal, 13-2(37), 227-228. (In Russian).
Khabarov, N.N., Danilenko, S.V., Martynyuk, Y.M. and Vankova, V.S. (2021), "Formation of competencies in the field of programming for students in the field of training "Mathematical support and administration of information systems", Business. Education. Right, 2 (55), 386-392. DOI: 10.25683/VOLBI.2021.55.230. (In Russian).
Shishlyannikova, L.M. (2009), "Application of correlation analysis in psychology", Psychological science and education, 1, 98-107. Available at: https://psyj ournals.ru/psyedu/2009/n1/Shishlyanni-kova_full.shtml (accessed 06 October 2022). (In Russian).
Balandina, I., Lebedeva, T., Milyutina, A., Moskvitina, T., Shefer, O., Shiganova, G. and Yuzdova, L. (2020), "Formation of IT competency while teaching school students", ICERI2020, 96449649. DOI: 10.21125/iceri.2020.2154. (In Spain).
Chacon, S. and Straub, B. (2022), Pro Git, Apress, New York, USA.
Gimranova, F.E. and Yarullin, D.N. (2020), "Features of formation of digital competence at students of secondary professional education", INTED2020 Proceedings, 8597-8600. DOI: 10.21125/inted.2020.2340. (In Spain).
Guthals, S. (2019), GitHub For Dummies Cheat Sheet, Learning made easy, Hoboken, USA.
Hamdamova Sevara, N.Q. (2022), "The role of programming education in teaching physics", SAI, B2. Available at: https://cyberleninka.ru/arti-cle/n/the-role-of-programming-education-in-teach-ing-physics (Accessed 06 October 2022).
Jayal, A., Lauria, S., Tucker, A. and Swift, S. (2011), "Python for Teaching Introductory Programming: A Quantitative Evaluation", Innovation in Teaching and Learning in Information and Computer Sciences, 10(1), 86-90. DOI: https://doi.org/10.11120/ital.2011.10010086. (In Great Britain).
Kagan, E.M. (2017), "Teaching programming as an approach to development of school students logical, abstract and computational thinking", RUDN Journal of Informatization in Education, 14(4), 442-451. DOI: 10.22363/2312-8631-2017-14-4442-451. (In Russia).
Kaplan, A., Pavlov, D. and Myradov, M. (2020), "Features of Using Kodu Game Lab in Teaching Programming in Elementary School", Mathematics and Informatics, 6(1), 9-23. Available at: https: // azbuki.bg/wp-content/up-loads/2020/02/Math_Info_1_Kaplan_Pavlov_Myra-dov.pdf (Accessed 06 October 2022).
Karimov, D., Rajapboeva, S., Ortikov, B. and Babajanov, B. (2022), "Developing and using applicable software in teaching web programming, Computer graphics", Topical issues of modern science and education, 107-109. Available at: https://eli-brary.ru/download/eli-
brary_49239116_88630196.pdf (Accessed 06 October 2022). (In Ukraine).
Shefer, O.P., Nosova, L.S. and Lebedeva T.N. (2018), "A Modern Methodology for Teaching Programming at a University", Scientific and Technical Information Processing, 45(2), 81-86. (In Russia).
Torres, M., Flores, N. and Torres, R. (2020), "Fostering Soft and Hard Skills for Innovation Among Informatics Engineering Students - an Emancipatory Approach", Journal of Innovation Management, 8(1), 20-38. DOI: 10.24840/2183-0606_008.001_0004. (In Portugal).
Информация о конфликте интересов: автор не имеет конфликта интересов для декларации. Conflicts of Interest: the author has no conflict of interests to declare.
Данные автора:
Садыкова Фирая Эсхатовна, старший преподаватель департамента математики, Московский финансово-промышленный университет «Синергия».
About the authors:
Firaya E. Sadykova, Senior Lecturer, Department of Mathematics, Moscow Financial and Industrial University "Synergy".