Introduction to Programming

2021/2022

Prerequisite/Recommended prerequisite for participation in the module

No special prerequisites for the module.

Content, progress and pedagogy of the module

Objectives:

Students who complete the module obtain a solid foundation in working with computers and other digital devices, which will be built upon in future coursework to enable programming for different media platforms and working with analogue and digital sensors.

Furthermore, the student will be provided with a foundation and basic introduction to the systematic development of programs. The student should acquire an understanding of basic concepts and mechanisms in an imperative programming language such that the student is able to use the language and associated library to implement small programs.

Learning objectives

Knowledge

Students who complete the course module will obtain the following qualifications:

  • Understanding of control flow structures, both branching (e.g., if, switch), and loops (e.g., for, while)
  • Understanding variables, data types and structures (e.g., arrays, structs)
  • Understanding functions including function parameters, function output, and recursion
  • Understanding of design methodologies for programming and understanding of the distinction between good and bad programming practices
  • Understanding top-down and bottom-up problem solving strategies.
  • Understanding of the basic architecture and terminology related to computers (CPU, RAM, hard drive, I/O devices)
  • Understanding of basic terminology related to information storage and processing (bits, bytes, binary and hexadecimal numbers, floating point numbers, 2’s complement)
  • Understanding of the basic steps of producing a runnable programme using an integrated development environment (IDE) (writing code, compiling, linking, debugging)
  • Understanding of the basic steps of converting mathematical expressions into code (e.g., basic trigonometric functions and vector arithmetic)
  • Understanding of the basic 2-D geometry needed to produce interactive 2-D graphics, e.g., vector arithmetic and trigonometric functions

Skills

Students who complete the course module will obtain the following qualifications:

  • Ability to apply knowledge to the design of a simple event-driven interactive interface, e.g., a simple game
  • Ability to interpret and analyse programming code
  • Ability to apply programming skills to the implementation of input devices, e.g., keyboard, mouse
  • Ability to apply programming skills to the design and implementation of basic functions and data structures
  • Make use of built-in API functions and data types in synthesising new programmes (application)
  • Ability to apply knowledge to the systematic design of software with proper documentation
  • Must be able to plan and perform systematic test of small programs (e.g., black box and white box testing approaches) (application)
  • Ability to apply programming skills to the implementation of basic mathematical expressions needed to create interactive 2D graphics
  • Must be able to discuss/assess the quality of a given program (analysis)
  • Must be able to use an IDE for software development, including a debugger (application)

Competences

Students who complete the course module will obtain the following qualifications:

  • Evaluate existing code, judge its design, and recommend changes
  • Must have competencies in using programming to solve programming tasks, especially programming tasks related to medialogy, communication and IT/new media (application

Type of instruction

Refer to the overview of instruction types listed in the start of chapter 3. The types of instruction for this course are decided in accordance with the current Framework Provisions and directions are decided and given by the Study Board for Media Technology.

Exam

Exams

Name of examIntroduction to Programming
Type of exam
Written or oral exam
In accordance with the current Framework Provisions and directions on examination from the
Study Board for Media Technology:

To be eligible to take the exam the student must have fulfilled:
• handing in of written assignments or the like
• completion of certain – or all – study activities

Note that if admittance to the exam or parts of the assessment is to be based on written work or exercises, a deadline is stipulated for when the work must be handed in. If the student hands in a paper/exercise after the deadline, the student has used an examination attempt.

Individual oral or written examination with internal censor. The assessment is performed in accord-ance with the 7-point scale.
ECTS5
Permitted aids
With certain aids:
See semester description
Assessment7-point grading scale
Type of gradingInternal examination
Criteria of assessmentThe criteria of assessment are stated in the Examination Policies and Procedures

Facts about the module

Danish titleGrundlæggende programmering
Module codeMSNMEDB1144
Module typeCourse
Duration1 semester
SemesterAutumn
ECTS5
Language of instructionEnglish
Location of the lectureCampus Aalborg, Campus Copenhagen
Responsible for the module

Organisation

Study BoardStudy Board of Media Technology, Study Board of Electronics and IT
DepartmentDepartment of Architecture, Design and Media Technology
FacultyTechnical Faculty of IT and Design