Creative Computing celebrates and interrogates the collision of creativity and technology. The results are novel and surprising, yet useful, and feature computing as a tool to enhance human creativity or help address real world problems. The goal of BSc (Hons) Creative Computing is to develop versatile and imaginative creative technologists. We teach you how to craft ideas, shape interactive experiences, design for audiences, programme intelligently and evaluate critically. Our key aim is to help you develop a unique balance of technical proficiency and creative flair that is both rare and valued across the digital sector.
Students participate in co-creation projects, debates, presentations, full-day creative challenges and rapid prototyping workshops to gain a production-led understanding of creative computing. Assessment is focused similarly on context, making and evaluation. You deliver portfolios of creative content, present showcase artefacts, negotiate technical tasks, and write commentaries that position and reflect critically on digital work.
CodeLab I is a rapid prototyping workshop series that introduces the fundamentals of procedural programming. Students encounter the first principles of coding from computational thinking and maths for programmers to key elements such as variables, conditionals, loops, arrays, and functions. We assume little to no prior experience in coding on entry. They learn procedural programming from the ground up, working through coding challenges and creative briefs that help embed new techniques and best practices into your programming ‘toolkit’.
Digital Storytelling introduces a variety of media-making techniques and approaches to interactivity that serves storytelling. Students receive a primer in digital media production, and explore a range of digital narratives (e.g. hypertext stories, stop motion animation, short-form games) that are designed to inform, persuade or entertain. Technical sessions are complemented by an overview of the design and development process – from idea generation and contextualization to artifact creation and testing. Here they encounter theories and best practices around media research, collaborative working, peer feedback, and reflective writing.
Digital Visual Design
Digital Visual Design introduces students to the knowledge, skills, and practice in visualizing, designing, and developing highly contemporary and professional interfaces for all of their working and usable digital artifacts. The aim is to help students enhance the usability, efficiency, and overall user experience and emotional satisfaction of their outputs.
In an age of ever-evolving visual interaction systems such as touch, voice, and gesture, digital artifacts are increasingly expected to be clean, minimal, and pleasant, as well as highly intuitive so that they are readily understood and effectively used by users of all ages and backgrounds. As such, computing professionals are increasingly expected to have adequate training in, and a good sense of, visual design to underpin the usability and success of all of their industrial digital design developments. This module serves as a robust foundation that not only supports several upcoming modules, but also all of students' future personal and industrial digital developments such as web development, smartphone apps, games development, web apps, media, etc.
The aim of this module is to expose the full design cycle, from the initial idea
generation and analysis, audience research, and user profiling, through the interface design (across device types) and prototype development, to testing, evaluation, and iteration. As the creative problem-solving process usually requires two distinct phases, the module begins by exploring the distinctiveness and relationship between divergent thinking (ideation) and convergent thinking (idea analysis and evaluation) approaches. Building on this grounding, students will be introduced to a variety of theoretical models that will ask them to explore concepts such as originality and influence, complexity and simplicity, and the role of play and playfulness. Students will put their ideas into practice as they are introduced to a wide range of practical strategies and techniques for nurturing and capturing the creative ideas of individuals and groups.
Creative Coding is a practice that uses code for artistic or creative expression. This can cover a wide variety of media including generative art, animation, data
visualization, games, apps, robotics, music, interactive art, immersive experiences – and many more. Creative Coders are frequently engaged in online community building, the open-source software movement, and campaigns for an open and equitable internet. Communities of creative coders have developed free tools that are used globally by makers including Processing, P5.js, Pure Data, and open Frameworks. Throughout your Creative Computing degree, students will engage with creative coding tools and communities making their own contributions through their research and developing creative practice.
CodeLab II extends your knowledge of coding to include object-oriented programming (OOP). Students build on the procedural programming techniques acquired in CodeLab I to deploy OOP concepts that enhance the functionality and efficiency of their builds. Beyond developing new technical skills, they learn about the software development cycle. Here they form an understanding of how software projects are planned, implemented, and maintained in the industry, including the use of 3rd party software libraries. The ultimate aim of CodeLab II is to develop programming proficiency to the point where they an independently experiment with unfamiliar coding techniques and languages successfully.
Emerging Technologies is a forum for revealing novel devices and nascent concepts in the field of creative computing. It is a reactive module, designed to address both the most recent consumer gadgets and tomorrow’s technologies in contexts such as entertainment, education, health and wellbeing, art, defense, heritage, and business. The critical analysis component of the module positions emerging technologies within a wider context. It supports discussion and debate around the historical trajectories, market aims, and sociocultural consequences of specific computing innovations. The experimentation component takes the form of a practice-led investigation of several technologies that have entered the marketplace in recent years. Experiments test the creative possibilities of select consumer-grade devices, in addition to considering their usability and programmability.
Creative Industry Challenge echoes the contest-driven approach adopted by many UK tech accelerators. In these challenges, teams of students are tasked to address a given real-world problem by designing and developing new tech products or services. Contests are short-form and require the rapid development of prototypes that act as proof of concept. This module similarly encourages divergent thinking and competition in support of innovation. The cohort is presented with a concisely worded real-world problem that demands a creative solution. Students break out into teams to ideate and strategize, then undertake the challenge as a unit across 10 weeks. During this period, they receive mentorship from project supervisors and industry partners who criticize solutions and help shape their ideas. Creative Industry Challenges concludes with a pitching event, in which a panel of experts selects a winning concept.
In this module, students develop a 2D game from concept to completion, and in doing so, engage the function and responsibilities of all key roles to gain an understanding of the full ‘game development ecosystem. We begin by analyzing and evaluating games of several genres, including some more unusual titles that they may not have played before. This helps them round their understanding of common game genres, mechanics, and approaches to player experience, as well as an appreciation of how experimental games reimagine or subvert them. Workshops and studio sessions focus on core skills in the technical and creative sides of game design. Here they design and develop their 2D game using industry-standard tools, prototyping methods, iterative design processes, and testing methodologies. This work includes an exploration of the capabilities of a game engine.
This module introduces smartphone app development within the context of Creative Computing. Using current app development IDEs and languages, students draw on knowledge gained across Creative Computing to implement projects that manage the user input and present rich, interactive media. Smartphone Apps introduces key aspects of the smartphone development pipeline including event handling, layouts, media playback, data storage, and notifications to create prototype utility apps, games, and other creative experiences. Themes of experience design and user testing are also engaged. Beyond technical skills, they learn about the wider opportunities that mobile media presents. Such opportunities derive from advances in, for instance, location awareness, context awareness, and augmented reality.
Web Dev II
Machine learning refers to a range of methods that enable computers to use data to derive insights. Broadly speaking, input data informs the construction and refinement of a model (training), which is then used to make sense of previously unseen data (prediction, inference). Importantly, machine learning does not rely on rule-based programming. Relationships within data are instead identified by the model, negating the need for them to be programmed explicitly. This allows models to adapt independently and become more accurate as they are exposed to new data. This module aims to engage the topic of machine learning from an applied perspective. Following a theoretical overview of machine learning methods (supervised, unsupervised, reinforcement) and their associated algorithms, the focus shifts toward how to apply machine learning to solve everyday problems. Popular programming languages and readily available tooling is used across the module, allowing relatively straightforward entry into using machine learning within development projects.
Creative Incubator is about exploring the commercial viability of students' digital ideas. It helps them transform proposals for new digital products or services into commodifiable prototypes. Such prototypes should demonstrate the potential to be developed into products that could attract further funding or be released into the marketplace. In short, Creative Incubator investigates how we can make money from what we do, whether that is game-making, web app development, animation, immersive creative media making, or another form of digital creativity.
This module takes the form of a 13-week incubator. Students participate as part of a crew to design and develop a product prototype around a given theme (e.g. health, heritage, environment). To support the enterprise aspects of Creative Incubator, they receive insight on funding models, collaborative working practices, audience analysis, professional networking, pitching, and identifying routes to market. The output of Creative Incubator is a product prototype and supporting the digital campaign: a culmination of each crew’s collaborative skills, technical knowledge, and industry insight. Product prototypes are presented via a showcase event that takes place at the end of the module.
All businesses face the threat of their IT systems being compromised. The impact of a successful attack is often expensive in terms of time and money for the businesses and individuals affected. It is therefore critical that anyone wishing to work in the computing sector have an understanding of how to protect the physical and intellectual property of the company to which they are attached. This module introduces the fundamentals of cyber security. Rather than turning students into cyber security experts, it aims to equip them with key knowledge that all employers in the creative industries and computing sector more widely expect them to have. During the module, they investigate the role of IT security professionals and apply some of the internet forensic techniques that are commonplace in the industry. In addition, the ethical considerations of cyber security are introduced and evaluated. This allows them to make decisions about working practices in the context of IT security that are morally informed.
Physical Computing helps make the inanimate, animate. It provides the knowledge and tools to help students create functional or artistic pieces that are tangible, driven by real-world data, and possible to deploy in a wide range of scenarios. Students work with microprocessors/single board computers and a range of input and output devices to read and write data from and to the real world. Input data may be gathered via environmental, biometric sensors, QR codes, and beyond, and outputs could take the form of text, light, sound, and movement.
The Research Project is a compressed research module where the output is a research report. Students form a research question in the field of creative computing, identify appropriate research methods for addressing the question, undertake the research, and then defend their work. This module is self-directed however they are allocated a supervisor to help manage their studies. The cohort comes together at several points across the semester to share and critique ideas. Support sessions on report writing, source analysis, and critical evaluation are provided to anticipate key development milestones.
This module builds on the front-end development techniques encountered in Web Dev II and introduces back-end techniques to develop creative database-driven web apps. Students learn how to handle database information, perform queries, and use the results to deliver dynamic content to the end user. Through the development of back-end web skills and critical exploration of web APIs, Tomorrow's Web will expose them to the creative possibilities of the web beyond conventional websites. The knowledge acquired in this module will enable them to develop a capstone creative web project that combines front-end and back-end techniques.