This module aims to excite and enthuse students in the field of IT, information systems, software engineering, and computer science. It provides an introduction to some of the fundamentals of computing, explores applications of computing, and develops the relevant intellectual and learning skills. The module addresses this from both a theoretical and a practical viewpoint.
- Student Learning
- Learning skills (meeting personal tutors, system registration, learning resources, library, ethics, plagiarism).
- Learning spaces (Introduction to the Blackboard VLE, establishing email accounts, and other learning tools).
- Computation
- What is computation? (Characteristics, limits on its use, relationship to hardware, software, history and future of computing.)
- Computational thinking at multiple levels of abstraction (applications to the real world problems).
- Scientific principles underpinning computation.
- Purpose and level of programming languages.
- Operation of a Digital Computer
- Basic components of a computer architecture.
- Elements of logic and Boolean algebra, binary arithmetic.
- Representation of data.
- Introduction to Programming in Python
- Values, variables, data types.
- Program control flow (structured programming).
- Elementary means of abstraction.
- Input and output.
- Python standard library.
- Collaborative Development
- An introduction to tools available for developing software collaboratively, e.g. Git.
- Presentation skills.
- Think Python: How to Think Like a Computer Scientist (Allen B. Downey)