FI2BCPP10 Programming Fundamentals
FI2BCPP10 Programming Fundamentals
- Course description
- Course CodeFI2BCPP10
- Level of Study5.2
- Program of StudyData Analyst 2
- Credits10
- Study Plan CoordinatorBertram Haskins, Alec Du Plessis
This course introduces candidates to programming fundamentals, using Python 3.x as the selected programming or scripting language. Candidates will learn to write structured code and be introduced to programming concepts such as data types, operators, collections, objects, comprehensions, file input-output, and various libraries. Candidates will learn about application programming interfaces (APIs) and how they access data stored within traditional and cloud-based databases. Candidates will learn how to write code in an integrated development environment (IDE), but will also become familiar with an alternative development, such as Jupyter Notebook. This type of environment simplifies the process of documenting code, presenting output and exporting reports in the form of Markdown.
This course is relevant because it teaches candidates the fundamentals of computational thinking and programming, in a widely used language, such as Python. Python is an excellent beginner’s programming language since it is well-documented, easy to understand, and can be taught with a rapid turnover rate. Programming and Python are two desired skills since many bespoke tools and processes require scripting to be used efficiently. Candidates will learn how to use tools to document their code and present their findings. Additionally, candidates will learn how to use APIs to interface their programs with data warehouses in a secure manner.
The candidate:
- has knowledge of concepts that are used in computational thinking to solve data analysis related problems using simple programs
- has knowledge of processes and techniques that are used in a selected programming language
- has knowledge of industry relevant tools which are able to export code examples and documentation into alternative forms such as Markdown
- has knowledge of concepts and processes that are used in relation to data access layers and the use of APIs
- is familiar with the history of programming languages and fundamental programming traditions
The candidate:
- can explain vocational choices in programming fundamentals, such as control structures and objects to create iterative solutions to repetitive tasks
- can explain vocational choices of APIs to create access layers within databases to import data into their programs
- can reflect over insight into database integration with the selected programming environment and adjust it under supervision
- can reflect on own use of programming syntax and the use of the interactive interpreter and adjust it under supervision
- can reflect on own the use of alternative text editing syntax to descriptive dialog within coded reports and adjust it under supervision
- can find and refer to information and vocational material about scripting or coding with a programming language to develop diverse and robust programs
The candidate:
- can plan and carry out well-documented programs alone or as part of a group to solve real-world data-related problems in accordance with ethical requirements and principles
- can plan and carry out fast, powerful, small scripts with a programming language and in accordance with ethical requirements and principles
- can exchange points of view with other data analysts and programmers and participate in collaboratively discussions to create complete and well-documented programs
Digital Learning Resources
The learning management system (LMS) is the primary learning platform where students access most of their course materials. The content is presented in various formats, such as text, images, models, videos or podcasts. Each course follows a progression plan, designed to lead students through weekly modules at their own pace. Exercises and assignments (individual or in groups) are embedded throughout the courses to support continuous practice and assessment of the learning outcomes.
Campus Resources
In addition to the digital learning resources, campus students participate in physical learning activities led by teachers as part of the overall delivery.
Guidance
Guidance and feedback from teachers support students' learning journeys, and may be provided synchronously or asynchronously, individually or in groups, via text, video or in-person feedback.
Form of assessment | Grading scale | Grouping | Duration of assessment |
---|---|---|---|
Course Assignment | Pass / Fail | Individual | 1 Week(s) |