production
Skip to Content

JC1001: PYTHON PROGRAMMING FOUNDATION (2022-2023)

Last modified: 31 May 2022 13:30


Course Overview

This course will provide a self-contained introduction to computer programming.  Students will be exposed to the basic principles of computer programming, e.g., fundamental programming techniques, concepts, algorithms and data structures. The course contains lectures where the principles are systematically developed. As the course does not presuppose knowledge of these principles, we start from basic intuitions. It will include a gentle introduction to professional issues and security concepts.

Course Details

Study Type Undergraduate Level 1
Term First Term Credit Points 17.5 credits (8.75 ECTS credits)
Campus Offshore Sustained Study No
Co-ordinators
  • Dr Matthew Collinson

What courses & programmes must have been taken before this course?

  • Any Undergraduate Programme (Studied)

What other courses must be taken with this course?

None.

What courses cannot be taken with this course?

None.

Are there a limited number of places available?

No

Course Description

The first half of this course will provide a self-contained introduction to computer programming. It assumes no prior knowledge of computers or programming. It will cover the basic principles of computer programming consisting of topics such as the following:

  • How to write and run your first program
  • Built-in types of data
  • Fundamental programming concepts including variables and scope, conditional statements, and iteration
  • Arrays
  • Programs that take inputs, and that generate outputs
  • How to structure and debug code

The second half of the course will cover:

  • Knowledge and understanding of further basic programming concepts: scope, functions, recursion, modular programming, important and invoking code from within other code
  • Knowledge and understanding of floating-point numbers, and libraries for scientific computing
  • Skill in deploying the above concepts in practice
  • A brief introduction to professional issues and professional institutions in computing
  • A brief introduction to security issues in computing.

The course will give extensive practice in computer programming.


Contact Teaching Time

Information on contact teaching time is available from the course guide.

Teaching Breakdown

More Information about Week Numbers


Details, including assessments, may be subject to change until 30 August 2024 for 1st term courses and 20 December 2024 for 2nd term courses.

Summative Assessments

Computer Programming Exercise

Assessment Type Summative Weighting 15
Assessment Weeks 13 Feedback Weeks 16

Look up Week Numbers

Feedback

Written feedback with automated components

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ProceduralAnalyseAn understanding of, and ability to apply, techniques to support correct code
ProceduralAnalyseKnowledge and understanding of further, basic programming concepts and their application: scope, functions, recursion, modular programming, importing and invoking code from within other code
ProceduralApplyAn understanding of how to write and run programs
ProceduralCreateSkill in programming using the concepts above, in particular for solving problems
ProceduralEvaluateAn understanding of how computer programs should be structured
ReflectionCreateThe ability to analyse simple problems and to solve them with programs

Computer Programming Exercise

Assessment Type Summative Weighting 25
Assessment Weeks 17 Feedback Weeks 20

Look up Week Numbers

Feedback

Written feedback with automated components

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ProceduralAnalyseKnowledge and understanding of further, basic programming concepts and their application: scope, functions, recursion, modular programming, importing and invoking code from within other code
ProceduralAnalyseAn understanding of, and ability to apply, techniques to support correct code
ProceduralApplyAn understanding of how to write and run programs
ProceduralCreateSkill in programming using the concepts above, in particular for solving problems
ProceduralEvaluateAn understanding of how computer programs should be structured
ReflectionCreateThe ability to analyse simple problems and to solve them with programs

Exam

Assessment Type Summative Weighting 60
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback
Learning Outcomes
Knowledge LevelThinking SkillOutcome
Sorry, we don't have this information available just now. Please check the course guide on MyAberdeen or with the Course Coordinator

Formative Assessment

There are no assessments for this course.

Resit Assessments

Resubmission of failed elements

Assessment Type Summative Weighting 100
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback
Learning Outcomes
Knowledge LevelThinking SkillOutcome
Sorry, we don't have this information available just now. Please check the course guide on MyAberdeen or with the Course Coordinator

Course Learning Outcomes

Knowledge LevelThinking SkillOutcome
ProceduralApplyAn understanding of how to write and run programs
ProceduralEvaluateAn understanding of how computer programs should be structured
ProceduralAnalyseAn understanding of, and ability to apply, techniques to support correct code
ReflectionCreateThe ability to analyse simple problems and to solve them with programs
ProceduralAnalyseKnowledge and understanding of further, basic programming concepts and their application: scope, functions, recursion, modular programming, importing and invoking code from within other code
ProceduralCreateSkill in programming using the concepts above, in particular for solving problems

Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.