Current and Emerging Trends in Python Programming Learning
Current and Emerging Trends in Python Programming Learning
Programming Learning
Amir Ahmad Santosh Ray Ali Nawaz
College of Information Technology Faculty of Information Technology, Liwa College College of Information Technology
United Arab Emirates University Abu Dhabi, United Arab Emirates United Arab Emirates University
Al Ain, UAE santosh.ray@lc.ac.ae Al Ain, UAE
amirahmad@uaeu.ac.ae 700040004@uaeu.ac.ae
Abstract—Programming skills are very important in the the broad and dynamic field of computer science. Ultimately,
2024 9th International STEM Education Conference (iSTEM-Ed) | 979-8-3503-6597-9/24/$31.00 ©2024 IEEE | DOI: 10.1109/ISTEM-ED62750.2024.10663187
rapidly changing technological landscape of the modern world. the purpose of the article is to provide a comprehensive guide
Due to its versatile features, Python has been widely used in to learn Python for both instructors and students.
developing applications for modern computing devices. However,
learners face challenges in finding appropriate learning paths and
content among the frequently disorganized and varied contents Motivation and Contribution
available for learning Python. This article aims to help such
learners find courses that best fit their unique requirements The purpose of this article is to address the important
and learning goals by offering a clear and simple roadmap. questions related to learning Python programming:
The research presented in this article examines pedagogical
approaches used by some of the popular institutions offering • To offer a clear and concise guide through the scattered
courses in Python. It also emphasizes the importance of websites landscape of available Python programming resources,
as helpful resources for prospective Python learners. The article aiming to consolidate them and direct learners to the
aims to provide a set of organized resources for those starting resources that precisely meet their requirements.
their Python programming adventure while keeping up with
• To investigate new Python teaching trends to innovate and
emerging trends in Python education by carefully analyzing
various resources. The ultimate goal of the article is to pro- enhance the educational experience.
vide students with the information and knowledge required to • To study a resource for educators, augmenting their
successfully traverse the evolving world of Python programming. pedagogical toolkit to teach Python.
Index Terms—Python, Digital education, Pedagogy, Teaching
The rest of the article is organized as follows: Section II
I. I NTRODUCTION discusses the Python courses taught by prominent institutions.
Section III presents the courses available in online repositories.
Python has become the topmost programming language Advanced courses taught by various resources are presented
in today’s educational environment, particularly in computer in Section IV. New trends in teaching are discussed in Section
science and information technology due to its ease of usage V. Finally, Section VI concludes the article.
and readability [1]. Python is a great starting language for stu-
dents who want to learn programming because of its naturally
II. P YTHON C OURSES TAUGHT BY P ROMINENT
designed syntax [2]. In addition to making the learning curve
I NSTITUTES
for newbies easier, its clean and simple code structure enables
a closer examination of core programming ideas as opposed In this section, the Python course taught by the state-of-
to syntactical distinction [3]. Similarly, Python has a large the-art educational institute, summarized in Table I, will be
number of libraries and frameworks that provide hands-on illustrated in remaining of this section.
experience with a wide range of real-world applications, such
as using Pandas and NumPy for data analysis [4]. Moreover,
A. Beginning Programming in Python by Stanford
Python acts as a programming gateway for more evolving
and specialized courses such as artificial intelligence and The Stanford course [8] is intended for students with no
machine learning [5], which are quickly changing the face prior computer science experience. The course covers fun-
of technology. Educational institutions can provide students damental Python concepts such as control structures, lists,
with the necessary skills to succeed not only in their academic functions, arrays, and loops, as well as the general theories of
journey but also in their future professional endeavors by computer programming. Additionally, it includes a practical
introducing Python [6]. Therefore, the purpose of this article is course project in which students use their knowledge to work
to examine and suggest several Python teaching and learning on a budget-related project that involves processing a CSV
resources. It emphasizes how crucial it is to include Python file. However, as the focus of the course on budget-related
programming in academic curricula [7], not just as a subject of projects may limit its scope in comparison to a more general
study but also as a skill set that is becoming more important in programming course.
2
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO AMAZONAS. Downloaded on September 09,2024 at 09:44:19 UTC from IEEE Xplore. Restrictions apply.
Python, including data types, functions, loops, and conditional hands-on coding exercises and projects that provide practical
statements, are usually covered in this course. It also explores experience alongside theoretical knowledge. However, one
more advanced ideas like error handling, file handling, and potential limitation is that the free version has limited access
data structures (dictionaries, lists). As Google have a strong to content and learners need to upgrade to a paid subscription
emphasis on practical skills, the course is designed to include to access all features and content.
hands-on projects and exercises.
C. W3Schools Python Tutorial
B. Codecademy Learn Python course W3Schools Python Tutorial provides a comprehensive and
well-organized resource for learning Python [15]. It covers
TABLE II: Comparison of Online Python programming courses a wide range of topics from Python fundamentals to more
advanced concepts like file handling, database management,
Institute Course Title Key Features Target Audi- and exercises. The tutorial uses a learning-by-examples ap-
ence proach, allowing users to practice and test their knowledge
Google Crash Course Fundamental Emphasis on via interactive code editing. It also includes a ”My Learning”
(Cours- on Python concepts, practical program to track progress and a quiz to assess Python skills.
era) advanced skills,
ideas, suitable D. Udemy Python Courses
practical for quick Udemy offers a Learn Python: The Complete Python Pro-
projects learning gramming Course [16]. The course covers everything related
Codecademy Learn Python Structured Interactive to the fundamentals of Python programming. One advantage of
course learning path, environment, Udemy’s Python course is its flexibility, which allows students
interactive limited free to learn at their own pace through hands-on exercises and
exercises access quizzes. One potential limitation is that some courses may
W3Schools Python Tuto- Comprehensive Self-paced, require a paid subscription to access all features and content.
rial topics, lacks
E. Khan Academy
example- structured
based curriculum Khan Academy provides a Intro to Computer Science -
learning Python course which introduces students to programming with
Udemy Python Fundamental Self-paced, Python [17]. The course is intended for people with little or
Courses to advanced requires no programming experience and covers basic programming
topics, payment for concepts like variables, loops, conditionals, and functions. The
flexible full features website offers interactive talk-through platform and provides
learning hands-on learning opportunities through complex problem.
Khan Intro to Basic Free access, While Khan Academy’s resources are free and available to
Academy Computer programming lacks formal everyone, the websites services are not provided the same
Science - concepts, academic level of academic recognition as formal university programs
Python interactive recognition or certifications.
platform F. Sololearn
SoloLearn Python 3 Tu- Comprehensive Free access,
Python 3 tutorial by SoloLearn is a free online course that
torial introduction, certificates
offers a comprehensive introduction to Python programming
interactive lack formal
[18]. The course covers basic programming concepts like
lessons recognition
variables, loops, conditionals, and functions, as well as some
Python.org Beginner’s Fundamental Free access,
advanced topics like object-oriented programming and file
Guide and advanced self-guided
management. The interactive lessons and quizzes provide a
topics, com- learning
hands-on learning experience, and students can track their
prehensive
progress and receive certificates upon completion. One advan-
documenta-
tage of the course is that it is free and accessible to anyone
tion
with an internet connection.
3
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO AMAZONAS. Downloaded on September 09,2024 at 09:44:19 UTC from IEEE Xplore. Restrictions apply.
documentation, which includes tutorials, a library reference, IV. A DVANCED P YTHON COURSES
and a language reference. One advantage of the guide is that This section illustrated the advanced Python course avail-
it is free and accessible to anyone with an internet connection. able at different resources which are also summarized in Table
III.
TABLE III: Comparison of advanced Python courses A. UC Berkeley
A Python course is available at the University of California,
Course Course Ti- Key Features Target Audi-
Berkeley, with a focus on data science and analytics [20]. The
Provider tle ence
goal of these courses is to use Python’s ability for in-depth
UC Berke- Python Data science Students
analysis in fields that demand a strong grasp of machine learn-
ley Course and analytics, interested in
ing, statistical analysis, and data processing methods. Foun-
with Data machine data science
dational programming concepts are usually covered in UC
Science learning
Berkeley’s Python courses, which are followed by advanced
Focus algorithms,
topics in data analysis, machine learning algorithms, and data
data
visualization. The students will learn how to use Scikit-learn
visualization
for machine learning applications, Matplotlib and Seaborn for
RealPython Various Web Developers of
data visualization, and Pandas and other Python libraries for
Python development, all skill levels
data manipulation. The course is overpriced compared to the
Tutorials data science,
content it provides and other similar courses.
practical
applications, B. RealPython
subscription- Real Python is an online platform that provides a diverse
based in- range of Python tutorials, articles, and resources for developers
depth content of all skill level [21]. The platform covers a wide range of
Udemy Python Machine Beginners in topics, such as web development, data science, and machine
for Data learning, programming learning. One of the benefits of Real Python is its emphasis
Science and data analysis, on practical, real-world Python applications, making it an
Machine practical invaluable resource for developers looking to apply their skills
Learning exercises and in professional environments. The platform’s tutorials and
Bootcamp quizzes articles are well-structured and frequently include step-by-step
Real Become a Python web Aspiring instructions, making it easier for students to follow along and
Python Python Web development, Python web apply what they learn.
Developer backend and developers
C. Python for Data Science and Machine Learning Bootcamp
frontend
integration, The comprehensive online course named Python for Data
application Science and Machine Learning Bootcamp by Udemy covers
deployment the foundations of machine learning, data analysis, and Python
Coursera Python Cybersecurity Beginners in programming [22]. Building big data analysis projects, data
for Cyber- applications, programming visualization, and data analysis with NumPy and Pandas are
security offensive and and some of the topics covered in the course. With its practical
Specializa- defensive pro- cybersecurity exercises and quizzes, the course is intended for those with
tion gramming, little to no programming experience. The practical methodol-
automation ogy of course enables students to apply their knowledge to
Real Python Game Students real-world projects at an early stage, improves their learning
Python Game De- development interested process and helps them apply Python programming.
velopment using libraries in game D. Become a Python Web Developer by Real Python
Tutorials like pygame development This path provides foundational skills for individuals in-
and Arcade terested in a career in Python web development [23]. The
FutureLearn Networking TCP and Students course covers key techniques used in the field, as well as
with Python: UDP sockets, interested practical solutions to Python web application development
Socket Pro- server-client in network problems. It focuses on testing, integrating backend code with
gramming commu- programming frontend libraries, deploying web applications, designing and
for Commu- nication, interacting with APIs, social authentication, and caching to
nication multithread- improve application performance. The course also includes
ing, secure free bonus materials like a Django Learning Resources Guide
connections and a Flask + Python video tutorial.
4
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO AMAZONAS. Downloaded on September 09,2024 at 09:44:19 UTC from IEEE Xplore. Restrictions apply.
E. Python for Cybersecurity customized learning path by personalizing challenges and con-
The Python for Cybersecurity Specialization on Cours- tent, greatly improving their comprehension and proficiency
era [24] is a comprehensive online course that teaches the with Python.
fundamentals of Python programming for cybersecurity. The
course covers topics like using advanced Python features for C. Chatbots for Python Teaching
both offensive and defensive cybersecurity, automating multi-
stage attack chains and defensive operations with Python, Chatbots have developed as a transformational educational
and creating custom Python scripts to automate cybersecurity tool, specifically for teaching programming languages such
tasks. as Python [29]. Through the intricacies of Python’s syntax,
structures, and problem-solving techniques, these AI-driven
F. Game Development assistants offer students a dynamic and captivating learning
Real Python provides Python Game Development tutorials experience. The interactivity keeps learners engaged, and the
that cover a variety of topics, including the use of libraries tailored feedback can considerably improve the learning curve.
such as Pygame and Arcade [25]. The tutorials encourage However, the limitations of a chatbot-based learning platform
students to gain hands-on experience by creating games, may include a lack of in-depth, nuanced understanding that a
which reinforces fundamental programming skills like vari- human instructor can provide.
ables, loops, conditional statements, functions, and object-
oriented programming. One advantage of tutorials is their D. Collaborative Coding
practical approach which provides hands-on experience with
commonly used game development techniques. The course is Collaborative Coding Platforms are a significant advance-
more expensive compared to other available courses. ment in Python programming education, emphasizing the
value of group learning [30]. These platforms provide an
G. Python Networking programming online environment in which students can code together in
The Networking with Python: Socket Programming for real time, regardless of geographical location. This approach
Communication course by Futurelearn [26] teaches students encourages collaborative learning by allowing students to
to create networked applications with Python and socket share ideas, debug code of each other, and work on group
programming. The course discusses TCP and UDP sockets, projects that simulate real-world software development scenar-
server-client communication, multithreading, and secure con- ios. The ability to interact and code collaboratively not only
nections. Students who complete this course will have the nec- improves problem-solving abilities and knowledge sharing,
essary skills to develop robust, scalable network applications. but it also develops important soft skills such as teamwork,
One advantage of this course is its practical approach, which communication, and peer-to-peer learning.
focuses on hands-on experience with socket programming.
V. N EW TRENDS IN P YTHON T EACHING E. Integration with Emerging Technologies
This section examines the innovative pedagogy strategies An innovative approach to teaching programming is the
for teaching Python programming. combination of teaching Python with cutting-edge technolo-
gies [31] like blockchain, Internet of Things (IoT), and quan-
A. AR and VR tum computing. Instructors are able to give students a skill set
Using virtual and augmented reality technologies is a rev- that is not only up to date but also very relevant to the future
olutionary approach in teaching Python programming. The technological landscapes by incorporating Python into these
method changes the way students interact with Python by cutting-edge fields.
building interactive and immersive coding environments [27].
It goes beyond the limitations of screen-based instruction by F. Holistic approach
letting students enter a virtual environment where code is
visualized and altered in real time. This helps the students Adopting a holistic approach to solving issues in Python
to conceptualize abstract programming concepts in a tangible programming education, the language must be redefined as
way and also makes the learning process more engaging. a tool for approaching and resolving complex problems in
a variety of academic fields, rather than just for coding
B. Personalized learning [32]. With the use of this methodology, usefulness of Python
AI-Powered Personalized Learning [28] is a cutting-edge is expanded beyond the realm of traditional programming
method of teaching Python programming that makes use of applications, allowing it to be utilized in disciplines like
artificial intelligence to personalize each learning experience Physics and Mathematics for simulating physical phenomena
of students. By using AI, this approach analyzes a student’s and analyzing experimental data, as well as for complex
learning preferences, speed, and advancement to modify the numerical analyses. The method stresses critical thinking and
Python curriculum in real-time to suit their individual require- the application of programming abilities to practical situations
ments. AI-powered learning guarantees that every student has a by integrating Python into these various domains.
5
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO AMAZONAS. Downloaded on September 09,2024 at 09:44:19 UTC from IEEE Xplore. Restrictions apply.
G. Industry-Integrated Learning [7] J. Xu and M. Frydenberg, “Python programming in an is curriculum:
Perceived relevance and outcomes.” Information Systems Education
Industry-Integrated Learning in Python programming educa- Journal, vol. 19, no. 4, pp. 37–54, 2021.
tion is a strategic approach that aims to bridge the gap between [8] “Beginning programming in python by stanford,”
academic learning and real-world industry practices [33]. This https://shorturl.at/uLQTV, accessed: 2024-02-16.
[9] “Introduction to computer science and programming in python
model entails forming partnerships with technology companies by mit,” https://ocw.mit.edu/courses/6-0001-introduction-to-computer-
to engage students in projects that are directly related to science-and-programming-in-python-fall-2016/, accessed: 2024-02-16.
current industry needs. Direct interaction with industry experts [10] “Programming for everybody (getting started with python) by umichi-
gen,” https://shorturl.at/hGLP7, accessed: 2024-02-16.
and working on real-world business problems allows students [11] “Introduction to python online course imperial,”
to gain a better understanding of how their academic skills can https://www.imperial.ac.uk/students/academic-support/graduate-
be applied in the industry. The integration of academic and school/professional-development/masters-students/introduction-to-
python-online-course/, accessed: 2024-02-16.
professional worlds through industry-integrated learning not [12] “Python for beginners by iit,” https://eict.iitr.ac.in/python-for-beginners/,
only improves the educational experience, but it also prepares accessed: 2024-02-16.
them for future careers. [13] “Crash course on python by google,” https://shorturl.at/lotPU , accessed:
2024-02-16.
[14] “Codecademy learn python course,”
VI. C ONCLUSION https://www.codecademy.com/learn/learn-python-3, accessed: 2024-03-
10.
The article has highlighted a clear set of resources to [15] “W3schools python tutorial,” https://www.w3schools.com/python/, ac-
help students choose courses that best suit their interests cessed: 2024-03-10.
and aspirations by navigating the wide range of resources [16] “Udemy python courses,” https://rb.gy/74puoj, accessed: 2024-03-10.
[17] “Khan academy,” https://www.khanacademy.org/computing/intro-to-
available to them. Additionally, the article aims to improve python-fundamentals, accessed: 2024-03-10.
the whole educational experience for prospective programmers [18] “Sololearn python,” https://www.sololearn.com/en/learn/courses/python-
by examining cutting edge trends in Python teaching such as introduction, accessed: 2024-03-10.
[19] “Python docs,” https://www.python.org/, accessed: 2024-03-10.
interactive learning environments and tailored support tools [20] “Uc berkeley,” https://shorturl.at/orvEJ, accessed: 2024-02-16.
like chatbots. The study has suggested workable solutions [21] “Real python,” https://realpython.com/, accessed: 2024-03-10.
to typical problems encountered by students learning Python [22] “Udemy bootcamp,” https://shorturl.at/cNPXY, accessed: 2024-03-10.
[23] “Real python web development,” https://rb.gy/zr77lk, accessed: 2024-
programming through an assessment of numerous resources 03-10.
and technologies such as chatbot assistants and online Python [24] “Python for cybersecurity,” https://www.coursera.org/specializations/
challenges. Educators may find these recommendations suit- pythonforcybersecurity, accessed: 2024-03-10.
[25] “Game development,” https://realpython.com/tutorials/gamedev/, ac-
able for their students of all skill levels in getting a deeper cessed: 2024-03-10.
knowledge of Python programming and successfully traverse [26] “Python networking programming,” https://www.futurelearn.com/courses/
its difficulties by utilizing these insights and solutions. networking-with-python-socket-programming-for-communication,
accessed: 2024-03-10.
ACKNOWLEDGEMENTS [27] I. Muzyleva, L. Yazykova, A. Gorlach, and Y. Gorlach, “Augmented
and virtual reality technologies in education,” in 2021 1st International
This research was funded by Liwa College, Abu Dhabi, Conference on Technology Enhanced Learning in Higher Education
(TELE). IEEE, 2021, pp. 99–103.
UAE, under the title ”Educational Recommender System for [28] C. D. Vu, “Developing an ai-powered, personalized learning system for
Enhancing Student’s Performance, Learning Outcome, and efl/esl listening comprehension,” 2021.
Satisfaction” (Grant No. IRG-IT-002-2023). [29] C. W. Okonkwo and A. Ade-Ibijola, “Python-bot: A chatbot for teaching
python programming.” Engineering Letters, vol. 29, no. 1, 2020.
[30] A. Chorfi, D. Hedjazi, S. Aouag, and D. Boubiche, “Problem-based
R EFERENCES collaborative learning groupware to improve computer programming
[1] P. Gupta and S. Yadav, “A tam-based study on the ict usage by the skills,” Behaviour & Information Technology, vol. 41, no. 1, pp. 139–
academicians in higher educational institutions of delhi ncr,” in Congress 158, 2022.
on Intelligent Systems: Proceedings of CIS 2021, Volume 2. Springer, [31] Y. Huang, J. Zhao, Y. Qiang, T. Hou, X. Ren, and H. Sun, “The reform
2022, pp. 329–353. and exploration of intelligent python language teaching,” in 2021 16th
[2] F. Lazarinis, A. Karatrantou, C. Panagiotakopoulos, V. Daloukas, and International Conference on Computer Science & Education (ICCSE).
T. Panagiotakopoulos, “Strengthening the coding skills of teachers in a IEEE, 2021, pp. 883–888.
low dropout python mooc,” Advances in Mobile Learning Educational [32] L. Phipps and B. Kelly, “Holistic approaches to e-learning accessibility,”
Research, vol. 2, no. 1, pp. 187–200, 2022. in Approaches to Developing Accessible Learning Experiences. Rout-
[3] B. Xie, D. Loksa, G. L. Nelson, M. J. Davidson, D. Dong, H. Kwik, ledge, 2013, pp. 69–78.
A. H. Tan, L. Hwa, M. Li, and A. J. Ko, “A theory of instruction for [33] P. Brusilovsky, L. Malmi, R. Hosseini, J. Guerra, T. Sirkiä, and
introductory programming skills,” Computer Science Education, vol. 29, K. Pollari-Malmi, “An integrated practice system for learning pro-
no. 2-3, pp. 205–253, 2019. gramming in python: design and evaluation,” Research and practice in
[4] A. Navlani, A. Fandango, and I. Idris, Python Data Analysis: Perform technology enhanced learning, vol. 13, pp. 1–40, 2018.
data collection, data processing, wrangling, visualization, and model
building using Python. Packt Publishing Ltd, 2021.
[5] S. Raschka, J. Patterson, and C. Nolet, “Machine learning in python:
Main developments and technology trends in data science, machine
learning, and artificial intelligence,” Information, vol. 11, no. 4, p. 193,
2020.
[6] A. R. McDonald, R. Roberts, J. R. Koeppe, and B. L. Hall, “Under-
graduate structural biology education: A shift from users to developers
of computation and simulation tools,” Current Opinion in Structural
Biology, vol. 72, pp. 39–45, 2022.
6
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO AMAZONAS. Downloaded on September 09,2024 at 09:44:19 UTC from IEEE Xplore. Restrictions apply.