The aim of this course is to provide the student with enough programming knowledge to be able to get a job as a programmer. Everything else is details.
A student who completes our Full Stack Web Development course will:
- Have the ability to build a basic modern full-stack web application (using NodeJS, MySQL and React)
- Get experience with working in teams using Agile principles
- Know how to learn and self-teach new programming concepts
- Know how to use third-party libraries/APIs
- Have a basic understanding of what it means to work on digital products
Our course is split into three-week modules. It is the responsibility of the Lead Teachers to deliver the module to the students supported by a team of teaching assistants.
We teach one day per week in a physical location and then support the students during the week while they complete their coursework. This is primarily a self-taught course with a rigorous support structure in place to guide our students on their journey to becoming developers.
Out-of-classroom support is given in a Slack Channel where students can collaborate and ask questions to their peers and teachers. We encourage online collaboration in the form of video calls and screensharing. We also support our students with online drop-in sessions with volunteers, homework clubs and mentoring.
You can find our syllabus online here: https://syllabus.codeyourfuture.io/
Just as essential as the programming side of the course is that our students have the soft skills required to get and hold a job. These include:
- Time management
- Public Speaking
In this module students will learn the basic building blocks of the web: HTML and CSS. HTML gives us the power to add text, images and videos to a page. CSS enables us to organize these parts and make it look nice.
Think of it like this: if a webpage were a person, the HTML would be the skeleton and CSS the skin and clothing!
It is mainly used to create dynamic user interfaces, changing the data a user sees depending on their input.
In this module our students will learn all about a fundamental part of any software application: how to (safely) store data, so that it can be used on-demand. The students will learn how to structure and group data so their apps know where to find and store the correct data.
Any software application consists of at least 2 parts: a frontend, which is what the user sees and interacts with, and a backend. This module will expose the students to the wonderful world of backend development, where they learn all about where their data goes once they've pressed that submit button. They'll be writing web servers and learning how to send users the right feedback.
At the end of our course we work on a single large group project that pulls together everything the student have learnt on the course.
Added to this they'll learn some more cutting-edge technologies that will prepare them for a great start in a modern software company. We will start out with the basics and incrementally add more complexity. This way they'll learn how all the pieces of a RESTful API fit together, thereby gaining a deeper understanding of where the backend stops and frontend starts.
Along with practicing their programming skills, they will also be working on improving their communication skills. This is just as important, because they need to be able to communicate ideas and concepts in an easy-to-understand manner.
This project will form part of a student's portfolio that they can take to employers to help them secure a job.