You are on page 1of 12

Become a

Web Developer
Program Overview
Table of contents

The schedule

Required time commitment 3

Typical weekly schedule 3

The program

01. HTML, CSS, Website Layout, and Website Components 4

02. JavaScript & The DOM 5

03. Object-Oriented JavaScript 5

04. Functional Programming 6

05. Asynchronous Programming in JavaScript 7

06. Master the React ecosystem with Redux and Jest 8

07. Web APIs and Asynchronous Applications 8

08. Backend Development with Node.JS and Typescript 9

09. Creating an API with PostgreSQL and Express 10

Web Development 2
The schedule

Required time commitment

Masterschool's courses are designed to be rigorous and intensive. The program


requires you to work hard and dedicate 4-6 hours daily, and 25 hours per week.
Your schedule includes participating in live sessions, reviewing technical materials,
and interactive workshops.
Furthermore, our immersive career accelerator requires students to spend additional
time on industry projects, networking activities with hiring companies, and other
extra-curricular activities.

Typical weekly schedule

This is an example of a typical week in Masterschool. The exact time and days of your
weekly sessions will be provided to you during your enrollment.

Week days Weekend

Live Live Live Live


Study
Study

Study Study Study Study

Live

Live Live Live

5 hrs 4 hrs 4 hrs 5 hrs 5 hrs 2 hrs -

Min. 25 weekly hours

Mandatory lecture Mandatory self-study Optional sessions

Web Development 3
The program

01. HTML, CSS, Website Layout, and Website Components


Learn how to effectively create the structure of a website using semantic HTML,
and style websites with CSS and responsive layouts. Develop an understanding
of different use cases for CSS Grid and Flexbox, and structure the layout of a web
page using grid columns and rows.

HTML

Text Editors Text Elements HTML Lists Attributes The DOM Forms

Responsive Layouts

Building Layouts Media Queries Multiple Breakpoints Nesting Grids

Git Essentials

Working with a terminal Version Control Navigating a Linux shell Git Repo

Git History Git Commits, Tagging, Branching and Merging Remote Repos

CSS

Fonts Color Selectors Linking CSS Specificity The Box Model

Display and Positioning Absolute and Relative Units Typography

CSS Grid

Rows and Columns Grid Areas Advanced Grid

CSS Flexbox

Axes and Direction Ordering elements Aligning Items and Justifying Content

Web Development 4
02. JavaScript & The DOM
Use JavaScript to control a webpage. Learn what the Document Object Model
(DOM) is, and use JavaScript and the DOM to dictate page content and
interactions. Gain experience working with Browser Events and managing
website performance by controlling content creation efficiently.
The Document Object Model
The DOM Nodes, Elements, Interfaces CSS Selectors

Selecting Page Elements by ID, Class or Tag


Creating Content with JavaScript
Update Existing Page Content Add New Page Content Remove Page Content

Style Page Content


Working with Browser Events
Respond to Events Phases of an Event Remove an Event Listener

Know When the DOM is Ready


Performance
Add Page Content Efficiently Reflow and Repaint The Call Stack

The Event Loop setTimeout

03. Object-Oriented JavaScript


Learn how to use the object oriented programming features of JavaScript to build

applications with reusable and maintainable blocks of code. Build classes to


construct objects that include both data and functionality, learn how to use
prototypal inheritance to maintain DRY code, and how to keep data safe and secure
with private properties.

Web Development 5
Objects In-Depth
Object creation and mutations of properties Object methods

Functions at Runtime
Functions as first-class functions Scope creation

Closures, IIFEs and private state

Classes and Objects


Constructor function to instantiate objects Implement prototypal inheritance

Identify and manually set the value of this

Object-Oriented Design Patterns


Mixins Private properties The module pattern

04. Functional Programming


Learn the core concepts of Functional Programming, gain a better understanding of
programming paradigms and why there is a trend towards the Functional paradigm right

now. Beyond a high level understanding of Functional programming, you will also discover
and practice the modern JavaScript syntax that will allow you to benefit from these
concepts in your JavaScript programs.

Intro to Functional Programming


History of Functional Programming Benefits of Functional Programming

Introduction to Programming Paradigms Benefits of programming paradigms

Comparing Paradigms

Functional JS Syntax
ES6 Array methods ES6 Variables Object Methods

Web Development 6
Functional Programming in JS

Writing Functional Programs in JavaScript Higher Order Functions

Functional Data Manipulation Functional DOM Manipulations

05. Asynchronous Programming in JavaScript

Get comfortable reading, writing, and thinking in asynchronous patterns. Understanding


asynchronous programming is not only a vital JavaScript skill to master, but is also an
important step in your progress as a web developer.

Introduction to Async

Introduction to asynchronous thinking Benefits of asynchronous programming

Asynch Concepts and Callbacks

Threads and single threaded programming Blocking and Non-Blocking code

Callbacks for asynchronous functionality

Sequence Events, Promises

Basic syntax and Promise chaining Implementations of Promises with Fetch

Error handling and practices for Promises Advanced Promise methods

Async/Await

Synchronous Try/catch syntax Async/await with Promise chains

Error handling with Async/await

Web Development 7
06. Master the React ecosystem with Redux and Jest

Mastering the power and versatility of the most popular modern front-end framework
begins with learning the fundamentals, you will learn the foundational parts of the React
ecosystem which are necessary to build production-ready apps and continue with learning
how to manage complex application states with Redux all while writing professionally
tested code with the Jest testing framework.

React Fundamentals

Why React Rendering UI with React Managing React State

Lifecycle Events Managing State Using React Hooks

Manage App Location w. React Router

Managing State with Redux

UI & Redux Redux Middleware Redux with React

Asynchronous Redux

Asynchronous Redux The react-redux Bindings

Pitfalls of asynchronous requests Data fetching using Thunk and Saga

Testing with Jest

Install and configure Jest Testing patterns for React components

Unit tests and test renderers Testing asynchronous code and mock API calls

07. Web APIs and Asynchronous Applications

Set up a Node and Express environment so you can develop web applications on your
local machine, and learn to handle HTTP Requests and Routes. Update and modify
website elements dynamically using asynchronously retrieved data.

Web Development 8
Node & Express Environment
Package Installation Server Set-Up Creating a Local Server
Servers-File Structure Hierarchy
HTTP Requests & Routes
Routes Client Side, Server Side GET Requests POST Requests
Processing the POST Request
Asynchronous JavaScript
Async Promises Async Fetch with Web APIs Intro Credential and API Keys
Adding Fetch to your Code Chaining Promises Updating UI Elements

08. Backend Development with Node.JS and Typescript


There are quite a few technologies involved to build the backend of an application
that’s enterprise ready. You will learn the fundamental tools needed to build
applications in a way that is both scalable, and maintainable. You will learn how to
work with Node.js and the core modules available, with Node.js and the core modules
available, writing TypeScript for developer error reduction, testing with Jasmine to
introduce unit testing in a Test Driven Development environment and deepen your
backend expertise working with Express.
Getting Started with Node.js

Get up and running with Node.js concepts Node Package Manager (NPM)

File I/O Express Web Framework API Testing ESLint


Test-Driven Development
Typescript
Typescript fundamentals How to write Typescript
Typescript in professional environments

Web Development 9
Unit Testing with Jasmine

Unit testing and test-driven development (TDD) Configuring Jasmine

Writing and running tests

Building a Server

Working with Express Adding Middleware Using the File System Module

09. Creating an API with PostgreSQL and Express


Learn the primary skills required for API development. Build a RESTful JSON API with
Node and Postgres. Along the way, you will cover essential topics like databases and
querying, API architecture, database migrations, REST, CRUD, creating a testing
environment, password hashing and route authorization via JWTs.

Databases and SQL

Popular databases and their use cases Get started with SQL Foreign keys

Create a database with PostgreSQL CRUD operations on a database

Translate data requirements into a database

API with Postgres

Connect Node app to a database Environment variables Testing models

Database migrations Models in NodeJS

REST API with Express

RESTful API structure Testing routes Express for incoming requests

Breaking Express routes into separate files Mapping RESTful routes to model methods

Auth. and Security in a Node API

Password hashing and salt Password hashing with the bcrypt library JWT's

Web Development 10
SQL for advanced API functionality

Database relationships SQL Joins RESTful endpoints using with joins

RESTful endpoints with param

11
Web Development
Keep exploring.

Keep dreaming.

Keep asking why.

Don’t settle for what you already know.

Never stop believing in the power of your


ideas, your imagination,

and your hard work to change the world.

Barack Obama

You might also like