Designing a Technical Teaching Approach for Python Programming Language

Main Article Content

Durmus Koc


Teaching and learning programming languages has been always a vital problem within educational processes. Because of technical and abstract subjects that should be learned while dealing with a programming language, there has been a remarkable effort to make everthing better for achieveing better, more effective and efficient teaching and learning programming languages. Studies performed in this manner has been also supported by some remarkable educational approaches. In this study, a sample of technical teaching approach for Python programming language is considered. Because the approach is currently in the process, some essential information regarding to it has been provided in order to introduce the whole process and enable readers to have enough idea about what is done. Briefly, the approach is formed by blended learning, which combines both face to face and e-learning sessions together. In the approach introduced here m-learning is used along e-learning sessions of the educational flow, and some activities are held during face to face lectures.

Article Details

How to Cite
KOC, Durmus. Designing a Technical Teaching Approach for Python Programming Language. Journal of Multidisciplinary Developments, [S.l.], v. 2, n. 1, p. 25-27, jan. 2017. ISSN 2564-6095. Available at: <>. Date accessed: 22 sep. 2021.
Natural Sciences - Work in Progress Paper


Bonk, C. J., & Graham, C. R. (2012). The handbook of blended learning: Global perspectives, local designs. John Wiley & Sons.

Burton, P. J., & Bruhn, R. E. (2003). Teaching programming in the OOP era. ACM SIGCSE Bulletin, 35(2), 111-114.

Deperlioglu, O., & Kose, U. (2013). The effectiveness and experiences of blended learning approaches to computer programming education. Computer Applications in Engineering Education, 21(2), 328-342.

Demšar, J., Curk, T., Erjavec, A., Gorup, Č., Hočevar, T., Milutinovič, M., ... & Štajdohar, M. (2013). Orange: data mining toolbox in Python. Journal of Machine Learning Research, 14(1), 2349-2353.

Domingue, J., & Mulholland, P. (1997). Teaching programming at a distance: the internet software visualization laboratory. Journal of Interactive Media in Education, 1997(1).

Garrison, D. R., & Kanuka, H. (2004). Blended learning: Uncovering its transformative potential in higher education. The internet and higher education, 7(2), 95-105.

Karakus, M., Uludag, S., Guler, E., Turner, S. W., & Ugur, A. (2012, June). Teaching computing and programming fundamentals via App Inventor for Android. In Information Technology Based Higher Education and Training (ITHET), 2012 International Conference on (pp. 1-8). IEEE.

Köse, U. (2010). A web based system for project-based learning activities in “web design and programming” course. Procedia-Social and Behavioral Sciences, 2(2), 1174-1184.

Kose, U. (2010). Web 2.0 Technologies in E-learning. Free and Open Source Software for E-learning: Issues, Successes and Challenges, Hershey, IGI Global, 1-23.

Kose, U., & Arslan, A. (2016). Intelligent e-learning system for improving students’ academic achievements in computer programming courses. The International journal of engineering education, 32(1), 185-198.

Kose, U., & Deperlioglu, O. (2012). Intelligent learning environments within blended learning for ensuring effective c programming course. arXiv preprint arXiv:1205.2670.

Kose, U., Koc, D., & Yucesoy, S. A. (2013). Design and Development of a Sample" Computer Programming" Course Tool via Story-Based E-Learning Approach. Educational Sciences: Theory and Practice, 13(2), 1235-1250.

Lutz, M. (2013). Learning python. " O'Reilly Media, Inc.".

Mahmoud, Q. H., & Popowicz, P. (2010, October). A mobile application development approach to teaching introductory programming. In Frontiers in Education Conference (FIE), 2010 IEEE (pp. T4F-1). IEEE.

O'Kelly, J., & Gibson, J. P. (2006, June). RoboCode & problem-based learning: a non-prescriptive approach to teaching programming. In ACM SIGCSE Bulletin (Vol. 38, No. 3, pp. 217-221). ACM.

Osguthorpe, R. T., & Graham, C. R. (2003). Blended learning environments: Definitions and directions. Quarterly Review of Distance Education, 4(3), 227-33.

Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., ... & Vanderplas, J. (2011). Scikit-learn: Machine learning in Python. Journal of Machine Learning Research, 12(Oct), 2825-2830.

Riley, D. (2012, February). Using mobile phone programming to teach Java and advanced programming to computer scientists. In Proceedings of the 43rd ACM technical symposium on Computer Science Education (pp. 541-546). ACM.

Tillmann, N., Moskal, M., De Halleux, J., Fahndrich, M., Bishop, J., Samuel, A., & Xie, T. (2012, July). The future of teaching programming is on mobile devices. In Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education (pp. 156-161). ACM.

Tufekci, A., Ekinci, H., & Kose, U. (2013). Development of an internet-based exam system for mobile environments and evaluation of its usability. Mevlana Int. J. of Education, 3(4), 57-74.

Tüfekçi, A., & Köse, U. (2013). Development of an artificial intelligence based software system on teaching computer programming and evaluation of the system. Hacettepe Üniversitesi Eğitim Fakültesi Dergisi, 28(2), 469-481.

Zelle, J. M. (2004). Python programming: an introduction to computer science. Franklin, Beedle & Associates, Inc..