Register now for our CAO Open Day.

Module Overview

Data-centric programming

The "Data-centric programming" module is designed to equip students with the fundamental skills required to load, manipulate, and analyse data. Building on the programming knowledge acquired in earlier modules, students will delve into the world of data handling, using practical, real-world examples, enabling them to work effectively with various data types, data sources, and data formats.

By the end of this module, students should be proficient in the use of general-purpose programming languages for processing data stored in popular structured and unstructured serialisation formats. Learners will gain experience building data-oriented GUI applications, using more advanced programming techniques and paradigms.

Module Code

DATA 2005

ECTS Credits

10

*Curricular information is subject to change

Semester 1: Data Science Programming

Semester 1 Overview:

  • Teaching Method: 4 hours per week (Lectures and Labs).

  • Duration: 13 weeks

Module Aims (Semester 1):

This semester aims to provide students with a strong foundation in data science programming using Python. By the end of the semester, students will be proficient in Pandas, NumPy, web scraping, and basic data analysis techniques.

Proposed Syllabus (Semester 1):

  • Introduction to Data Science Programming: Understanding the role of programming in data science, Python as a programming language, and essential libraries.

  • Pandas: Introduction to data manipulation with Pandas, including data structures, indexing, and data cleaning.

  • NumPy: Exploring numerical computing with NumPy, including arrays, mathematical operations, and data transformations.

  • Data Visualization: Introduction to data visualization libraries like Matplotlib and Seaborn for creating informative plots and graphs.

  • Web Scraping: Techniques for web scraping using Python, including libraries like Beautiful Soup and requests.

  • Basic Data Analysis: Performing basic data analysis tasks using Pandas and NumPy.

  • Team Project: Collaborative data analysis project, applying programming skills to real-world datasets.

Learning Outcomes (Semester 1):

By the end of Semester 1, students will be able to:

  1. Proficiently use Python libraries like Pandas and NumPy for data manipulation and analysis.
  2. Employ web scraping techniques to collect data from online sources.
  3. Create informative data visualizations using Matplotlib and Seaborn.
  4. Perform basic data analysis tasks, including data cleaning and transformation.
  5. Collaborate on a team project to apply programming skills to real-world datasets.

Semester 2: Raspberry Pi Robotics and Language Models

Semester 2 Overview:

  • Teaching Method: 4 hours per week (Lectures and Labs).

  • Duration: 13 weeks

Module Aims (Semester 2):

This semester aims to expand students' programming skills by focusing on Raspberry Pi robotics and their connection to large language models. Students will gain hands-on experience in building and programming robotic systems for various applications.

Proposed Syllabus (Semester 2):

  • Introduction to Raspberry Pi Robotics: Understanding the Raspberry Pi platform, sensors, and hardware components.

  • Programming Raspberry Pi: Learning Python programming for Raspberry Pi, including GPIO control and interfacing with sensors.

  • Robotics Projects: Designing and developing Raspberry Pi-based robotic projects, such as autonomous navigation, obstacle avoidance, and remote control.

  • Connecting to Large Language Models: Exploring the integration of Raspberry Pi robots with large language models like GPT-3 for natural language understanding and interaction.

  • Ethical Considerations: Discussing ethical considerations in AI and robotics, including privacy and responsible use of technology.

  • Team Robot Project: Collaborative development of Raspberry Pi-based robot projects connected to large language models, showcasing practical applications.

Learning Outcomes (Semester 2):

By the end of Semester 2, students will be able to:

  1. Build and program Raspberry Pi-based robots, including sensor integration and control.
  2. Develop practical applications for Raspberry Pi robots, such as autonomous navigation and remote control.
  3. Integrate Raspberry Pi robots with large language models for natural language understanding and interaction.
  4. Understand and consider ethical considerations related to AI and robotics.
  5. Collaborate on a team project to create functional Raspberry Pi-based robot applications connected to large language models.

This two-semester module provides students with a comprehensive skill set in data science programming, web scraping, and robotics connected to large language models, preparing them for various roles in the field of data science and AI.

This is a two semester module, which will introduce students to advanced programming concepts with specific focus on data science and/or artificial intelligence. 

The module delivery will take the form of lectures and practical lab work. The labs will give students a practical opportunity to try the concepts discussed in the lectures and will include experience with libraries that are specifically focused on data science and artificial intelligence.

Module Content & Assessment
Assessment Breakdown %
Formal Examination50
Other Assessment(s)50