Diploma / Front-end Development

PROGRAMME CURRICULUM

Build responsive, accessible front-end experiences with modern tools, strong fundamentals and real product practice.

FIRST YEAR

The first year foundational courses offer an intellectual framework within which students can begin to establish a coherent relationship between theory and practice.

In the first year, students obtain the foundational knowledge in mathematics and the basics of programming upon which students will develop understanding of programming and computer science during following years. The courses are mostly given in a form of lectures and takeaway coursework. By the end of this year, students will be able to write

programmes and use primary computer science tools.

Students will also undertake Design and Interaction Foundation courses in their first year, which culminates in the submission of their First year final project. The first project is designed to open up a space for discussion, experimentation and debate about the relationship between design and technology.

  • Product

    FROM ZERO TO HERO

    The course represents a deep dive into concepts and frameworks introduced during orientation. It is designed to teach students the process of creating a new venture. It introduces its participants to the concepts, challenges, and tools needed to create a successful new venture. Business model design & validation frameworks are studied and applied to the teams’ startups.

    6 credits
  • Introduction to programming

    PROGRAMMING I

    Taught by the computer science program. This should give an introduction to programming using Python.

    6 credits
  • Introduction to programming

    ALGORITHMS

    This course lays a strong foundation for developer problem-solving with algorithms. As an extension of Programming I, the course teaches students how to solve problems using a programming language, and which commonly used algorithms are best applied to specific problems.

    6 credits
  • Introduction to programming

    HISTORY OF WEB — FROM PRESENT TO FUTURE

    While the World Wide Web is only a few decades old, it has a rich history, and studying the patterns and nuances of this history informs the way we look at the future of the web. This course grants a strong point of view on how things are evolving in terms of web development.

    6 credits
  • Introduction to programming

    SHELL BASICS AND GIT AS A VERSION-CONTROL SYSTEM

    A shell is a computer program which exposes an operating system's services. With this course, students learn the basics of Shell commands and gain practice in getting a project up and running, then maintaining it. We dive right into how to set up development projects and learn to collaborate.

    6 credits
  • Introduction to interactive web design

    DESIGN I

    Taught by the Interaction Design programme.

    6 credits
  • Introduction to interactive web design

    PROGRAMMING II

    Building on the basics acquired in Programming I, in this course, we shift focus to the web, with JavaScript as the main programming language. Students become familiar with this popular programming language and learn the intrinsics of building web projects.

    6 credits
  • Introduction to interactive web design

    DESIGN II

    Taught by the Interaction Design programme.

    6 credits
  • Introduction to interactive web design

    CSS FOUNDATION

    Cascading Style Sheets, or CSS, is a programming language used to describe how a site or app will display. CSS is a basic and integral language for students to master as they delve into more complex design challenges. In this course, students have an opportunity to learn and practice CSS skills.

    6 credits
  • Introduction to interactive web design

    ANIMATIONS AND MOTION ON THE WEB

    Movies and animations are at the core of modern web development, and this course takes the principles of motion and applies them to the web to support engaging user experience.

    6 credits
  • Advanced web programming

    PROGRAMMING III

    This module can be shared with Computer Science for a more advanced approach to web programming with JavaScript.

    6 credits
  • Development as a career

    WEB TOOLING AND MODERN SETUP

    To build innovative projects, you need a modern setup. In this course, we look at the latest technologies used for a modern web programming setup and discuss which ones to use and why. The goal for each student is to compare and contrast options, then make an educated decision on a setup that will be used throughout the remainder of the program.

    6 credits
  • Development as a career

    EFFECTIVE TEAMWORK COLLABORATION

    Developers are notorious for staying behind their monitors and thriving on solo work. But teamwork skills are critical and can even be a competitive differentiator in the professional world. Being successful in the industry requires soft skills such as communication and teamwork — even and especially within a remote-work environment. This course focuses on practical group exercises to learn collaboration techniques with other developers and designers, and gives students an opportunity to practice these valuable skills.

    6 credits
  • Development as a career

    ETHICS ON THE WEB

    The launching point of the discussion in this course is whether ethics are important on the web, what they are, and how they can and should be applied in the context of web development and design. We'll look at dark patterns, examples of "bad ethics," and, of course, the role of social media in today's ethics conversations.

    6 credits
  • Development as a career

    PROJECT MANAGEMENT AND AGILE METHODOLOGIES

    Coding is fun, but at some point you will be required to either manage a project by yourself or be a part of a team using a particular management style or methodology. It's important to be familiar with project management and, in particular, the methodology of Agile. In this course, students learn how a development project is typically structured, including valuable elements of the production process such as sprints, quality assurance (QA), testing, milestones, etc.

    6 credits
  • Development as a career

    ENGLISH FOR THE INDUSTRY

    Despite the global reach of the digital industry, having a strong grasp of the English language in the ways it pertains to design in a selling point for any aspiring developer. This module can be shared with the Interactive Design program.

    6 credits
  • Development as a career

    DEVELOPMENT AS A JOB

    What's it like working as a developer in the real world? We'll introduce some common pitfalls and challenges to working as a developer, and specifically an interactive developer. This course provides valuable insight as we kick off the first-year personal project, and will always include a look into exactly where the industry is right now, and where it's evolving to.

    6 credits
  • Year-end project

    PERSONAL PROJECT

    In each year of this program, students are encouraged to work on a self-initiated personal project that explores a specific area of interest. Personal projects must be agreed upon with the course teacher before they kick off, and are presented at the end of the year, where students have the opportunity to defend and debate their work.

    6 credits

SECOND YEAR

In the second year the students will be offered both math courses in the field of discrete mathematics and courses in the field of software development and programming languages.

Most courses require practical coursework and a course project enabling students to get a feel for the challenges and approaches used in this field. The students will also begin developing software for the

Capstone project. By the end of this year, students will be able to write programmes and use primary computer science tools.

  • Advanced web programming

    REACT WEB

    The popular UI framework React holds a huge share of the market, and any developer should know how to use it. This course examines the latest features of React and introduced it as the main framework for the rest of the program. We'll cover examples and best practices for this front-end JavaScript library.

    6 credits
  • Advanced web programming

    SEMANTICS AND ACCESSIBILITY

    Accessibility of their designs is a major issue for developers to consider, although it's often overlooked. This course will cover the full spectrum of conversation and practical considerations when it comes to semantics and accessibility. We'll start with the theory behind accessible design and development, the methodologies and techniques currently being used, and how we can ensure that each student's personal project takes accessibility into consideration.

    6 credits
  • Advanced web programming

    CSS APPLIED IN REAL PROJECTS

    Now that we have the CSS foundation, it's time to apply the learnings to modern real-world products. In this course, we push basic CSS knowledge to the next level into the world of pre-processors and what they are trying to solve, powering more structured code and imparting advanced techniques.

    6 credits
  • Advanced web programming

    RWD

    Responsive web design means designing so that web pages render well on a variety of devices and screens, including, of course, mobile devices with their extra-small screens and different use requirements. The course will cover both the mindset and the methodologies required to build multi-device experiences on the web, as well as validating why this is a critical effort in today's market.

    6 credits
  • Advanced web programming

    JAVASCRIPT FRAMEWORKS

    This course offers a comparison of the current JavaScript frameworks on the market, giving an understanding of what use cases they work best for and what they attempt to solve. We'll spend time on application development, using basic examples to explore the most popular JavaScript frameworks. The course is designed to make web developers more nimble in choosing the right framework for any project.

    6 credits
  • Application development

    WEB PERFORMANCE

    Even as the internet gets faster, web performance is becoming more and more of a requirement. It's not enough to have a good looking website. If it doesn't load instantly, no one cares. This course will examine best practices in design and how to achieve a website or application that loads and responds as quickly as possible without sacrificing good design.

    6 credits
  • Application development

    REACT WEB II

    Building on the knowledge gained in React Web, we'll look at further features of React as we use it as the main framework for the rest of the program. Weaving in examples and best practices, there will be abundant opportunity to experiment and perfect the art of React.

    6 credits
  • Design foundation

    PROTOTYPING AND USER-CENTERED DESIGN

    Taught by the Interaction Design programme.

    6 credits
  • Design foundation

    DESIGN III

    Taught by the Interaction Design programme. Focus on Motion design.

    6 credits
  • Design foundation

    INTRODUCTION TO 3D AND WEBGL

    WebGL is a JavaScript API for rendering interactive graphics on virtually any browser, without the use of plug-ins. In this course, students learn how to model 3D objects using WebGL and how to use tools like Blender. We'll apply the basics of physics into a 3D space as we we experiment with the design.

    6 credits
  • Year-end project

    CLIENT PROJECT

    The second year of this program includes a client project, which begins with each student presenting a brief which outlines the subject, scope, and purpose of the project. As the project progresses, teams give tutorials demonstrating their methods and progress, and the project culminates with a presentation to the entire program base. Some client briefs are developed in conjunction with real external partners. Others are internal.

    6 credits
  • Year-end project

    PERSONAL PROJECT

    In each year of this program, students are encouraged to work on a self-initiated personal project that explores a specific area of interest. Personal projects must be agreed upon with the course teacher before they kick off, and are presented at the end of the year, where students have the opportunity to defend and debate their work.

    6 credits

Ready to get started?

Applications are open year-round. Join the next cohort of innovators at SBF-CIET.

Apply Now