프로그래밍에 언어적 사고가 수학적 사고보다 중요한가? (2020)
(massivesci.com)- 새로운 연구에 따르면, 프로그래밍 학습에 있어 언어 능력이 수학 능력보다 더 중요함
- 연구는 Python 학습 속도와 성과를 예측하는 데 언어 능력과 문제 해결 능력이 중요하다는 것을 보여줌
- EEG 데이터는 언어 학습과 프로그래밍 학습 간의 연결성을 추가로 지원함
- 여성이 평균적으로 언어 능력이 높아 프로그래밍에 더 적합할 수 있다는 가능성을 제시함
- 프로그래밍 교육에서 수학 요구 사항을 줄이고 언어 중심의 접근법을 채택하는 것이 다양성을 높일 수 있음
언어 능력과 프로그래밍 학습
- University of Washington 연구진은 언어 능력과 문제 해결 능력이 Python 학습 속도와 성과를 예측하는 데 가장 중요하다는 것을 발견함
- 연구는 행동 테스트와 뇌 활동 측정을 사용하여 참가자들이 프로그래밍을 얼마나 빠르고 잘 배우는지 분석함
- Codeacademy의 온라인 코딩 코스를 통해 42명의 참가자가 Python을 학습하고, 그들의 학습 속도와 성과를 평가함
연구 결과
- 언어 적성은 Python 학습 속도의 약 20%를 설명하며, 수학 능력은 학습 속도와 성과에 거의 영향을 미치지 않음
- EEG 데이터는 언어 학습과 프로그래밍 학습 간의 연결성을 추가로 지원하며, 높은 베타 진동 수준이 더 빠른 학습과 더 많은 프로그래밍 지식과 관련이 있음
프로그래밍과 수학의 관계
- 프로그래밍은 종종 수학 집약적인 분야로 여겨지지만, 이 연구는 언어 능력이 더 중요하다는 것을 보여줌
- 여성이 평균적으로 언어 능력이 높아 프로그래밍에 더 적합할 수 있다는 가능성을 제시함
- 프로그래밍 교육에서 수학 요구 사항을 줄이고 언어 중심의 접근법을 채택하는 것이 다양성을 높일 수 있음
교육적 함의
- 프로그래밍을 배우기 위한 수학 전제 조건에 대한 오랜 가정을 재고할 필요가 있음
- 언어 중심의 교육 옵션을 제공하여 프로그래밍 기술을 가르치면서도 고급 수학을 요구하지 않는 것이 중요함
- 부트캠프 스타일의 옵션은 미적분학을 강요하지 않고도 프로그래밍 경력으로 이어질 수 있음
전문가 의견
- 프로그래밍은 수학 천재만을 위한 것이 아니라는 인식이 확산되고 있음
- 프로그래밍 언어를 실제 언어로 생각하는 것이 더 합리적일 수 있으며, 언어 중심의 접근법이 학생들의 학습에 미치는 영향을 탐구할 필요가 있음
Hacker News 의견
-
연구 논문을 실제로 읽어본 사람이 있는지 궁금함. 헤드라인이 과장되어 있으며, 연구 결과 자체도 엄격하지 않음
- 샘플 크기가 작음 - 36명이 완료함
- 수리력의 R^2 = .27, 언어력의 R^2 = .31
- 단계적 회귀 분석을 통해 분산 기여도를 결정하는데, 초기 결과를 무시하는 듯 보임. 수리력의 기여도가 거의 없음
- 언어 학습이 수리력보다 더 중요하다는 p-값이 0.772로, 전혀 중요하지 않음
- Prat et al. (2020) 연구는 언어 능력이 Python 프로그래밍 학습에 더 나은 예측자임을 시사하지만, 신중히 읽어야 함
- 연구는 일상적인 수리 문제 해결 능력을 측정하며, 이는 프로그래밍과 관련된 고급 수학과는 다름
- Python은 자연어와 유사하게 설계되어 언어 능력이 강한 사람에게 유리할 수 있음
- 언어와 수학은 상호 보완적이며, 프로그래밍 맥락에서 어떻게 상호작용하는지가 중요함
-
좋은 코드는 문제를 해결할 뿐만 아니라 읽기 쉽고 모듈화되어 있음
- 코딩의 문제 해결 부분은 수학적 기술이 필요하고, 조직화 부분은 글쓰기 기술이 필요함
- 수학 증명도 조직화 기술이 필요하며, 수학은 큰 도약이 필요한 반면, 프로그래밍은 작은 단계가 많음
-
빠른 독서 능력이 프로그래밍 경력에 유용했음
- SAT 수학 점수는 좋았지만, 언어 점수는 완벽했음
- 새로운 프로젝트에 참여할 때 코드를 읽고 이해하는 데 시간을 투자함
-
"언어 뇌"나 "수학 뇌"라는 것은 실험적으로 증명되지 않음
- 수학은 인간이 만든 형식 언어이며, 논리와 집합 이론의 정의와 공리에서 시작됨
- 경험 많은 수학자들은 수학을 일상 언어처럼 읽음
-
수학은 계산이 아니라 패턴에 관한 것임
- 수학 교육에서 계산에 너무 집중하는 것이 문제임
- 수학은 추상화에 관한 것이며, 이는 학습을 가속화하고 사고 방식에 깊은 영향을 미침
-
"언어 뇌"와 "수학 뇌"를 정의하는 것은 잘못된 이분법임
- 수학은 개념을 표현하기 위한 기호의 집합임
- 누구나 관심과 노력, 기회가 있다면 좋은 프로그래머나 수학자가 될 수 있음
-
프로그래밍 학습에 능숙한 사람과 영어 철자 대회에 능숙한 사람 사이에 흥미로운 상관관계가 있음
-
언어 능력과 문제 해결 능력은 관련이 있음
- 프로그래밍은 수학보다는 대수학에 가깝지만, 덜 엄격하고 디버깅이 쉬움
-
고등학교 때 수학을 잘 못했지만, 언어 학습을 잘했음
- Python을 배우면서 수학 표기법이 또 다른 언어라는 것을 깨달음
- Python은 자연어와 유사하게 설계되어 학습에 도움이 되었음