IFB104 Introduction to Programming
To view more information for this unit, select Unit Outline from the list below. Please note the teaching period for which the Unit Outline is relevant.
| Unit code: | IFB104 |
|---|---|
| Antirequisite(s): | ITD104, CAB201, EGB103, EGD103 |
| Equivalent(s): | INB104, ITB001 |
| Credit points: | 12 |
| Timetable | Details in HiQ, if available |
| Availabilities |
|
| CSP student contribution | $1,192 |
| Domestic tuition unit fee | $4,704 |
| International unit fee | $5,640 |
Unit Outline: Semester 1 2026, Gardens Point, Internal
| Unit code: | IFB104 |
|---|---|
| Credit points: | 12 |
| Equivalent: | INB104, ITB001 |
| Anti-requisite: | ITD104, CAB201, EGB103, EGD103 |
| Coordinators: | Laurianne Sitbon | l.sitbon@qut.edu.au Colin Fidge | c.fidge@qut.edu.au |
Overview
This unit provides a hands-on introduction to computer programming for students with no prior coding experience at all. It introduces the basic principles of programming in a typical imperative language, including expressions, assignment, functions, choice and iteration. It then shows how to use Application Programming Interfaces to complete common Information Technology tasks such as querying databases, creating user interfaces, and searching for patterns in large datasets. It finally connects the technical approaches to professional and entrepreneurial contexts. The emphasis is on developing skills through practice, so the unit includes numerous coding exercises and assignments, using a simple scripting language, a code development environment and a Generative AI tool. The unit establishes a foundation for later subjects that teach large-scale software development using industrial-strength programming languages.
Learning Outcomes
On successful completion of this unit you will be able to:
- Distinguish the commonly used features in computer languages needed to build IT systems.
- Use selected computer languages effectively to develop software to address user needs.
- Apply appropriate processes and creative thinking to develop solutions to small IT challenges.
- Outline the basic lifecycle of software development and acquisition.
- Contrast professional and AI skills for software development
Content
This unit provides you with a variety of engaging experiences in the broad areas of programming, pattern-matching and user interfaces to develop your skill set and knowledge about Information Technology systems and languages. This is accomplished by providing you with both skills-development exercises and assessed assignments that encourage you to solve practical problems encountered in building IT systems, making use of simple software development environments and developing professional approaches.
Learning Approaches
This unit is available for you to study in either on-campus or online mode. While lectures introduce principles of programming and professional practice, the unit emphasises a hands-on approach to learning through an engaging program of exercises which provide you with the opportunity to carry out a number of practical, artefact-driven tasks aimed at building small IT systems. On the larger assignment you will be required to present the results of your work in a novice professional manner. This progressive range of simple to more complex tasks will foster your ability to perform individually while developing effective and ethical approaches to consulting with your peers and Generative AI Co-pilot tools. In the practical workshops you will collaborate with your peers to solve non-trivial IT problems and reflect on how your assignments could be extended to start a new venture that can address a gap in the market. You will have the opportunity to discuss any difficulties you are having with the practical exercises and assessment tasks with your peers and Workshop Facilitator in interactive workshops.
Feedback on Learning and Assessment
Feedback in this unit is provided in the following ways:
- You will assess the outcomes of your code against expected outputs.
- You can ask the teaching staff for advice and assistance during practical workshops.
- You will receive formative peer and academic feedback on your portfolios of practical tasks, especially through presentation of your work in workshops.
- You will receive written feedback on assessment items.
- You can participate in student support groups or arrange peer consultation.
Assessment
Overview
You will complete two portfolios of assessment items to show how you can solve IT system development problems.
Unit Grading Scheme
7- point scale
Assessment Tasks
Assessment: Programming Tasks
A sequence of non-trivial problem-solving tasks in which you will demonstrate the fundamental programming skills you have acquired in the first half of the unit. This assignment consists of two components. The first component will be submitted early in the semester and is an opportunity to assess your progress. It is then incorporated into the second component of the task.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Project
A major programming task in which you will create an interactive application using the applied knowledge and skills you have gained throughout the entire unit. This assignment consists of two components. The first component will be submitted just after the middle of the semester as an initial prototype. The full version is then developed as the second component of the task demonstrated at the end of the semester.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Process
A demonstration of the programming project and a Q&A that covers the programming principles and development process employed: approach, components of the system, feedback sought and used.
Academic Integrity
Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.
The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.
You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.
Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.
Resources
This unit makes extensive use of online resources. All manuals and computer software needed to complete the exercises and assessment items will be either available online or provided in QUT's computer labs. Reference may be made to relevant textbooks, but purchasing these will not be compulsory.
Risk Assessment Statement
There are no unusual health or safety risks associated with this unit.
Standards/Competencies
This unit is designed to support your development of the following standards\competencies.
Australian Computer Society Core Body of Knowledge
2: ICT Problem Solving
Relates to: ULO3
4: Technology Building
The Global Skills and Competency framework for a digital world
PROG: Programming/Software Development
Course Learning Outcomes
This unit is designed to support your development of the following course/study area learning outcomes.DS01 Bachelor of Data Science
- Demonstrate a broad and coherent knowledge of the principles, concepts and techniques of the data science discipline, with depth of knowledge in at least one area developed through a major.
Relates to: Programming Tasks, Programming Project, Programming Process - Use appropriate statistical, computational, modelling, data management, programming and generative artificial intelligence techniques to develop solutions for deriving insights from data.
Relates to: Programming Tasks, Programming Project - Demonstrate critical thinking and problem-solving skills, as well as adaptivity in applying learned techniques in new and unfamiliar contexts.
Relates to: Programming Tasks
IN01 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: ULO3, Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: ULO2, Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: ULO5, Programming Project, Programming Process
IN05 Bachelor of Games and Interactive Environments
- Demonstrate broad knowledge of games and interactive environments principles and theory, with an in-depth knowledge of one games-related discipline.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project - Apply creativity, critical thinking and problem-solving skills to generate solutions to design challenges.
Relates to: ULO3, Programming Tasks, Programming Project - Create engaging and meaningful games experiences for specific target audiences in partnership with diverse industry and community stakeholders using industry-relevant software and technologies..
Relates to: ULO2, Programming Tasks, Programming Project
IZ02 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: Programming Project
MV01 Bachelor of Mathematics
- Demonstrate aptitude in computer programming, and familiarity with industry-leading programming languages and relevant specialised mathematical, statistical and generative artificial intelligence software and tools.
Relates to: Programming Tasks, Programming Project
Unit Outline: Semester 1 2026, Online
| Unit code: | IFB104 |
|---|---|
| Credit points: | 12 |
| Equivalent: | INB104, ITB001 |
| Anti-requisite: | ITD104, CAB201, EGB103, EGD103 |
Overview
This unit provides a hands-on introduction to computer programming for students with no prior coding experience at all. It introduces the basic principles of programming in a typical imperative language, including expressions, assignment, functions, choice and iteration. It then shows how to use Application Programming Interfaces to complete common Information Technology tasks such as querying databases, creating user interfaces, and searching for patterns in large datasets. It finally connects the technical approaches to professional and entrepreneurial contexts. The emphasis is on developing skills through practice, so the unit includes numerous coding exercises and assignments, using a simple scripting language, a code development environment and a Generative AI tool. The unit establishes a foundation for later subjects that teach large-scale software development using industrial-strength programming languages.
Learning Outcomes
On successful completion of this unit you will be able to:
- Distinguish the commonly used features in computer languages needed to build IT systems.
- Use selected computer languages effectively to develop software to address user needs.
- Apply appropriate processes and creative thinking to develop solutions to small IT challenges.
- Outline the basic lifecycle of software development and acquisition.
- Contrast professional and AI skills for software development
Content
This unit provides you with a variety of engaging experiences in the broad areas of programming, pattern-matching and user interfaces to develop your skill set and knowledge about Information Technology systems and languages. This is accomplished by providing you with both skills-development exercises and assessed assignments that encourage you to solve practical problems encountered in building IT systems, making use of simple software development environments and developing professional approaches.
Learning Approaches
This unit is available for you to study in either on-campus or online mode. While lectures introduce principles of programming and professional practice, the unit emphasises a hands-on approach to learning through an engaging program of exercises which provide you with the opportunity to carry out a number of practical, artefact-driven tasks aimed at building small IT systems. On the larger assignment you will be required to present the results of your work in a novice professional manner. This progressive range of simple to more complex tasks will foster your ability to perform individually while developing effective and ethical approaches to consulting with your peers and Generative AI Co-pilot tools. In the practical workshops you will collaborate with your peers to solve non-trivial IT problems and reflect on how your assignments could be extended to start a new venture that can address a gap in the market. You will have the opportunity to discuss any difficulties you are having with the practical exercises and assessment tasks with your peers and Workshop Facilitator in interactive workshops.
Feedback on Learning and Assessment
Feedback in this unit is provided in the following ways:
- You will assess the outcomes of your code against expected outputs.
- You can ask the teaching staff for advice and assistance during practical workshops.
- You will receive formative peer and academic feedback on your portfolios of practical tasks, especially through presentation of your work in workshops.
- You will receive written feedback on assessment items.
- You can participate in student support groups or arrange peer consultation.
Assessment
Overview
You will complete two portfolios of assessment items to show how you can solve IT system development problems.
Unit Grading Scheme
7- point scale
Assessment Tasks
Assessment: Programming Tasks
A sequence of non-trivial problem-solving tasks in which you will demonstrate the fundamental programming skills you have acquired in the first half of the unit. This assignment consists of two components. The first component will be submitted early in the semester and is an opportunity to assess your progress. It is then incorporated into the second component of the task.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Project
A major programming task in which you will create an interactive application using the applied knowledge and skills you have gained throughout the entire unit. This assignment consists of two components. The first component will be submitted just after the middle of the semester as an initial prototype. The full version is then developed as the second component of the task demonstrated at the end of the semester.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Process
A demonstration of the programming project and a Q&A that covers the programming principles and development process employed: approach, components of the system, feedback sought and used.
Academic Integrity
Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.
The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.
You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.
Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.
Resources
This unit makes extensive use of online resources. All manuals and computer software needed to complete the exercises and assessment items will be either available online or provided in QUT's computer labs. Reference may be made to relevant textbooks, but purchasing these will not be compulsory.
Risk Assessment Statement
There are no unusual health or safety risks associated with this unit.
Standards/Competencies
This unit is designed to support your development of the following standards\competencies.
Australian Computer Society Core Body of Knowledge
2: ICT Problem Solving
Relates to: ULO3
4: Technology Building
The Global Skills and Competency framework for a digital world
PROG: Programming/Software Development
Course Learning Outcomes
This unit is designed to support your development of the following course/study area learning outcomes.DS01 Bachelor of Data Science
- Demonstrate a broad and coherent knowledge of the principles, concepts and techniques of the data science discipline, with depth of knowledge in at least one area developed through a major.
Relates to: Programming Tasks, Programming Project, Programming Process - Use appropriate statistical, computational, modelling, data management, programming and generative artificial intelligence techniques to develop solutions for deriving insights from data.
Relates to: Programming Tasks, Programming Project - Demonstrate critical thinking and problem-solving skills, as well as adaptivity in applying learned techniques in new and unfamiliar contexts.
Relates to: Programming Tasks
IN01 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: ULO3, Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: ULO2, Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: ULO5, Programming Project, Programming Process
IN05 Bachelor of Games and Interactive Environments
- Demonstrate broad knowledge of games and interactive environments principles and theory, with an in-depth knowledge of one games-related discipline.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project - Apply creativity, critical thinking and problem-solving skills to generate solutions to design challenges.
Relates to: ULO3, Programming Tasks, Programming Project - Create engaging and meaningful games experiences for specific target audiences in partnership with diverse industry and community stakeholders using industry-relevant software and technologies..
Relates to: ULO2, Programming Tasks, Programming Project
IZ02 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: Programming Project
MV01 Bachelor of Mathematics
- Demonstrate aptitude in computer programming, and familiarity with industry-leading programming languages and relevant specialised mathematical, statistical and generative artificial intelligence software and tools.
Relates to: Programming Tasks, Programming Project
Unit Outline: Semester 2 2026, Gardens Point, Internal
| Unit code: | IFB104 |
|---|---|
| Credit points: | 12 |
| Equivalent: | INB104, ITB001 |
| Anti-requisite: | ITD104, CAB201, EGB103, EGD103 |
| Coordinators: | Laurianne Sitbon | l.sitbon@qut.edu.au Colin Fidge | c.fidge@qut.edu.au |
Overview
This unit provides a hands-on introduction to computer programming for students with no prior coding experience at all. It introduces the basic principles of programming in a typical imperative language, including expressions, assignment, functions, choice and iteration. It then shows how to use Application Programming Interfaces to complete common Information Technology tasks such as querying databases, creating user interfaces, and searching for patterns in large datasets. It finally connects the technical approaches to professional and entrepreneurial contexts. The emphasis is on developing skills through practice, so the unit includes numerous coding exercises and assignments, using a simple scripting language, a code development environment and a Generative AI tool. The unit establishes a foundation for later subjects that teach large-scale software development using industrial-strength programming languages.
Learning Outcomes
On successful completion of this unit you will be able to:
- Distinguish the commonly used features in computer languages needed to build IT systems.
- Use selected computer languages effectively to develop software to address user needs.
- Apply appropriate processes and creative thinking to develop solutions to small IT challenges.
- Outline the basic lifecycle of software development and acquisition.
- Contrast professional and AI skills for software development
Content
This unit provides you with a variety of engaging experiences in the broad areas of programming, pattern-matching and user interfaces to develop your skill set and knowledge about Information Technology systems and languages. This is accomplished by providing you with both skills-development exercises and assessed assignments that encourage you to solve practical problems encountered in building IT systems, making use of simple software development environments and developing professional approaches.
Learning Approaches
This unit is available for you to study in either on-campus or online mode. While lectures introduce principles of programming and professional practice, the unit emphasises a hands-on approach to learning through an engaging program of exercises which provide you with the opportunity to carry out a number of practical, artefact-driven tasks aimed at building small IT systems. On the larger assignment you will be required to present the results of your work in a novice professional manner. This progressive range of simple to more complex tasks will foster your ability to perform individually while developing effective and ethical approaches to consulting with your peers and Generative AI Co-pilot tools. In the practical workshops you will collaborate with your peers to solve non-trivial IT problems and reflect on how your assignments could be extended to start a new venture that can address a gap in the market. You will have the opportunity to discuss any difficulties you are having with the practical exercises and assessment tasks with your peers and Workshop Facilitator in interactive workshops.
Feedback on Learning and Assessment
Feedback in this unit is provided in the following ways:
- You will assess the outcomes of your code against expected outputs.
- You can ask the teaching staff for advice and assistance during practical workshops.
- You will receive formative peer and academic feedback on your portfolios of practical tasks, especially through presentation of your work in workshops.
- You will receive written feedback on assessment items.
- You can participate in student support groups or arrange peer consultation.
Assessment
Overview
You will complete two portfolios of assessment items to show how you can solve IT system development problems.
Unit Grading Scheme
7- point scale
Assessment Tasks
Assessment: Programming Tasks
A sequence of non-trivial problem-solving tasks in which you will demonstrate the fundamental programming skills you have acquired in the first half of the unit. This assignment consists of two components. The first component will be submitted early in the semester and is an opportunity to assess your progress. It is then incorporated into the second component of the task.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Project
A major programming task in which you will create an interactive application using the applied knowledge and skills you have gained throughout the entire unit. This assignment consists of two components. The first component will be submitted just after the middle of the semester as an initial prototype. The full version is then developed as the second component of the task demonstrated at the end of the semester.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Process
A demonstration of the programming project and a Q&A that covers the programming principles and development process employed: approach, components of the system, feedback sought and used.
Academic Integrity
Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.
The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.
You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.
Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.
Resources
This unit makes extensive use of online resources. All manuals and computer software needed to complete the exercises and assessment items will be either available online or provided in QUT's computer labs. Reference may be made to relevant textbooks, but purchasing these will not be compulsory.
Risk Assessment Statement
There are no unusual health or safety risks associated with this unit.
Standards/Competencies
This unit is designed to support your development of the following standards\competencies.
Australian Computer Society Core Body of Knowledge
2: ICT Problem Solving
Relates to: ULO3
4: Technology Building
The Global Skills and Competency framework for a digital world
PROG: Programming/Software Development
Course Learning Outcomes
This unit is designed to support your development of the following course/study area learning outcomes.DS01 Bachelor of Data Science
- Demonstrate a broad and coherent knowledge of the principles, concepts and techniques of the data science discipline, with depth of knowledge in at least one area developed through a major.
Relates to: Programming Tasks, Programming Project, Programming Process - Use appropriate statistical, computational, modelling, data management, programming and generative artificial intelligence techniques to develop solutions for deriving insights from data.
Relates to: Programming Tasks, Programming Project - Demonstrate critical thinking and problem-solving skills, as well as adaptivity in applying learned techniques in new and unfamiliar contexts.
Relates to: Programming Tasks
IN01 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: ULO3, Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: ULO2, Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: ULO5, Programming Project, Programming Process
IN05 Bachelor of Games and Interactive Environments
- Demonstrate broad knowledge of games and interactive environments principles and theory, with an in-depth knowledge of one games-related discipline.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project - Apply creativity, critical thinking and problem-solving skills to generate solutions to design challenges.
Relates to: ULO3, Programming Tasks, Programming Project - Create engaging and meaningful games experiences for specific target audiences in partnership with diverse industry and community stakeholders using industry-relevant software and technologies..
Relates to: ULO2, Programming Tasks, Programming Project
IZ02 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: Programming Project
MV01 Bachelor of Mathematics
- Demonstrate aptitude in computer programming, and familiarity with industry-leading programming languages and relevant specialised mathematical, statistical and generative artificial intelligence software and tools.
Relates to: Programming Tasks, Programming Project
Unit Outline: Semester 2 2026, Online
| Unit code: | IFB104 |
|---|---|
| Credit points: | 12 |
| Equivalent: | INB104, ITB001 |
| Anti-requisite: | ITD104, CAB201, EGB103, EGD103 |
Overview
This unit provides a hands-on introduction to computer programming for students with no prior coding experience at all. It introduces the basic principles of programming in a typical imperative language, including expressions, assignment, functions, choice and iteration. It then shows how to use Application Programming Interfaces to complete common Information Technology tasks such as querying databases, creating user interfaces, and searching for patterns in large datasets. It finally connects the technical approaches to professional and entrepreneurial contexts. The emphasis is on developing skills through practice, so the unit includes numerous coding exercises and assignments, using a simple scripting language, a code development environment and a Generative AI tool. The unit establishes a foundation for later subjects that teach large-scale software development using industrial-strength programming languages.
Learning Outcomes
On successful completion of this unit you will be able to:
- Distinguish the commonly used features in computer languages needed to build IT systems.
- Use selected computer languages effectively to develop software to address user needs.
- Apply appropriate processes and creative thinking to develop solutions to small IT challenges.
- Outline the basic lifecycle of software development and acquisition.
- Contrast professional and AI skills for software development
Content
This unit provides you with a variety of engaging experiences in the broad areas of programming, pattern-matching and user interfaces to develop your skill set and knowledge about Information Technology systems and languages. This is accomplished by providing you with both skills-development exercises and assessed assignments that encourage you to solve practical problems encountered in building IT systems, making use of simple software development environments and developing professional approaches.
Learning Approaches
This unit is available for you to study in either on-campus or online mode. While lectures introduce principles of programming and professional practice, the unit emphasises a hands-on approach to learning through an engaging program of exercises which provide you with the opportunity to carry out a number of practical, artefact-driven tasks aimed at building small IT systems. On the larger assignment you will be required to present the results of your work in a novice professional manner. This progressive range of simple to more complex tasks will foster your ability to perform individually while developing effective and ethical approaches to consulting with your peers and Generative AI Co-pilot tools. In the practical workshops you will collaborate with your peers to solve non-trivial IT problems and reflect on how your assignments could be extended to start a new venture that can address a gap in the market. You will have the opportunity to discuss any difficulties you are having with the practical exercises and assessment tasks with your peers and Workshop Facilitator in interactive workshops.
Feedback on Learning and Assessment
Feedback in this unit is provided in the following ways:
- You will assess the outcomes of your code against expected outputs.
- You can ask the teaching staff for advice and assistance during practical workshops.
- You will receive formative peer and academic feedback on your portfolios of practical tasks, especially through presentation of your work in workshops.
- You will receive written feedback on assessment items.
- You can participate in student support groups or arrange peer consultation.
Assessment
Overview
You will complete two portfolios of assessment items to show how you can solve IT system development problems.
Unit Grading Scheme
7- point scale
Assessment Tasks
Assessment: Programming Tasks
A sequence of non-trivial problem-solving tasks in which you will demonstrate the fundamental programming skills you have acquired in the first half of the unit. This assignment consists of two components. The first component will be submitted early in the semester and is an opportunity to assess your progress. It is then incorporated into the second component of the task.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Project
A major programming task in which you will create an interactive application using the applied knowledge and skills you have gained throughout the entire unit. This assignment consists of two components. The first component will be submitted just after the middle of the semester as an initial prototype. The full version is then developed as the second component of the task demonstrated at the end of the semester.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Programming Process
A demonstration of the programming project and a Q&A that covers the programming principles and development process employed: approach, components of the system, feedback sought and used.
Academic Integrity
Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.
The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.
You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.
Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.
Resources
This unit makes extensive use of online resources. All manuals and computer software needed to complete the exercises and assessment items will be either available online or provided in QUT's computer labs. Reference may be made to relevant textbooks, but purchasing these will not be compulsory.
Risk Assessment Statement
There are no unusual health or safety risks associated with this unit.
Standards/Competencies
This unit is designed to support your development of the following standards\competencies.
Australian Computer Society Core Body of Knowledge
2: ICT Problem Solving
Relates to: ULO3
4: Technology Building
The Global Skills and Competency framework for a digital world
PROG: Programming/Software Development
Course Learning Outcomes
This unit is designed to support your development of the following course/study area learning outcomes.DS01 Bachelor of Data Science
- Demonstrate a broad and coherent knowledge of the principles, concepts and techniques of the data science discipline, with depth of knowledge in at least one area developed through a major.
Relates to: Programming Tasks, Programming Project, Programming Process - Use appropriate statistical, computational, modelling, data management, programming and generative artificial intelligence techniques to develop solutions for deriving insights from data.
Relates to: Programming Tasks, Programming Project - Demonstrate critical thinking and problem-solving skills, as well as adaptivity in applying learned techniques in new and unfamiliar contexts.
Relates to: Programming Tasks
IN01 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: ULO3, Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: ULO2, Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: ULO5, Programming Project, Programming Process
IN05 Bachelor of Games and Interactive Environments
- Demonstrate broad knowledge of games and interactive environments principles and theory, with an in-depth knowledge of one games-related discipline.
Relates to: ULO1, ULO4, Programming Tasks, Programming Project - Apply creativity, critical thinking and problem-solving skills to generate solutions to design challenges.
Relates to: ULO3, Programming Tasks, Programming Project - Create engaging and meaningful games experiences for specific target audiences in partnership with diverse industry and community stakeholders using industry-relevant software and technologies..
Relates to: ULO2, Programming Tasks, Programming Project
IZ02 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: Programming Tasks, Programming Project, Programming Process - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: Programming Tasks - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: Programming Project - Assess the risks and potential of artificial intelligence (and other disruptive emerging technologies) within an organisation and leverage AI knowledge and skills to solve IT challenges, improve productivity and add value.
Relates to: Programming Project
MV01 Bachelor of Mathematics
- Demonstrate aptitude in computer programming, and familiarity with industry-leading programming languages and relevant specialised mathematical, statistical and generative artificial intelligence software and tools.
Relates to: Programming Tasks, Programming Project