COMP47530 Exploring Ruby (Mixed Delivery)

Academic Year 2022/2023

The course will cover the Ruby programming language, introducing its main programming constructs (e.g., variable assignment, iterative constructs, conditionals, recursion) with a strong practical emphasis on system building. The Rails software framework will also be introduced and its importance to web-system design. Throughout the course functional and object-oriented programming aspects of Ruby will be emphasised. The module will have a mixed-delivery format, with the lectures being delivered online and four practical hours spaced throughout the semester, delivered in face-to-face sessions. Students will carry out weekly, self-directed coursework supported by the four face-to-face practical/clinics designed to provide guidance and feedback.

Show/hide contentOpenClose All

Curricular information is subject to change

Learning Outcomes:

Students should have attained a thorough working knowledge of Ruby programming techniques, be able to build a system using the language and apply it in a web context.

Indicative Module Content:

Main parts of the Ruby language; primitives, data-structures and programming conventions. Culminates in introduction to the Ruby-on-rails framework.

Student Effort Hours: 
Student Effort Type Hours
Specified Learning Activities




Computer Aided Lab




Approaches to Teaching and Learning:
The course adopts a very practical approach to learning the language, a learning-by-doing approach. So, students are encouraged to work through with through lectures with an open laptop, trying each of the examples discussed. Each lecture has an accompanying practical that address the main aspects of that lecture; it is important to do these on a weekly basis as you progress through the lectures. We will have face-to-face feedback sessions during term, where you can ask questions about these practical issues. 
Requirements, Exclusions and Recommendations
Learning Requirements:

The course is designed to be taken by students with no prior programming experience.

Learning Exclusions:


Learning Recommendations:

The course is designed to be taken by students with no prior programming experience. However, prior experience with, at least, one programming language and/or with the object-oriented programming paradigm would clearly be a boon.

Module Requisites and Incompatibles
Not applicable to this module.
Assessment Strategy  
Description Timing Open Book Exam Component Scale Must Pass Component % of Final Grade
Examination: 2 hours formal written exam 2 hour End of Trimester Exam No Graded No


Carry forward of passed components
Resit In Terminal Exam
Spring No
Please see Student Jargon Buster for more information about remediation types and timing. 
Feedback Strategy/Strategies

• Feedback individually to students, post-assessment

How will my Feedback be Delivered?

Feedback in given on the practicals completed during the term (these practicals are not counted in final mark, which is based purely on the written exam).

Timetabling information is displayed only for guidance purposes, relates to the current Academic Year only and is subject to change.
Practical Offering 1 Week(s) - 2, 4, 8, 11 Thurs 13:00 - 13:50