The HTTP Protocol
You can't start developing for the web without knowing the fundamentals. This module talks about the HTTP protocol used
to request resources from the server. We'll explore the details of what is used for a browser and for a server to make
sure the communication is legitimate.
- Http Verbs and their meanings
- Request and Response Headers
- Interpreting Status Codes
- Caching Resources
The structure of a web page is created on HTML. We'll have a look at basic elements like input fields, divs,... to make
sure the content is structured in the way we want.
- Anatomy of a page
- How a page is parsed
- Some important HTML elements
- Styling and Behavior
Working with forms is one of the most important aspects in HTML development. It makes it possible for the user to send
data to the server
- Form Elements
- How Forms Work
- Useful Attributes and Functions
Modern HTML includes a variety of semantic tags that make it easier for things like screen readers and search engine
to understand our webpages. In this module we take a look at those elements and their benefits.
- The need for meaningful elements
- Headers, content and footers
- Articles and sections
- Navigation elements
- Meaningful figures
- Dates and time
A web page only looks nice when we start styling it. HTML is great to get all of our content on the page, but when we
want to change the font, the colors, the location of everything we need some way to target these properties. CSS is the
language we'll use to make sure the browser renders the page in the way we want to. We'll start with some basic selectors
and learn how to use them efficiently.
- Styling websites using CSS
- CSS Selectors
- Understanding Inheritance & Cascading behavior
- Choosing the right unit
Principles of Web Design
Web design isn't just about knowing CSS, it's about creating good looking, easy to use applications. In this chapter, we'll take a look at some of the fundamental principles designers use to turn a good design into a great one.
- Layout and Composition
- User Experience
One of the hardest parts of CSS is making sure that every element is located at the correct position. We'll explain
how to do this and which properties have what kind of effect on the elements in the page.
- Understanding the Box Model
- Flow, display, float
- Positioning elements
- Flex Box
- Page layout strategies
Responsive web design with Bootstrap
Your web site needs to look fabulous on any device; whether it's a laptop, tablet or phone. Let bootstrap be your guide
in the messy world of media queries.
- Normalizing and Resetting
- The Grid System
- Utility classes
- Customizing look and feel
- Components: navigation, popovers ...
this module we'll take a first look at the language and how to make our lives easier by using it efficiently.
- What is ECMAScript?
- Picking the right Libraries
- Developer Tools
explain a couple of its quirks as well. This way, we can avoid surprises later.
- Using Variables
- Primitives and Objects
- Functions: more powerful than you'd expect
- Understanding Scope
- Error Handling
- Best Practices
Collections are a big part of OO programming, they allow you to map one-to-many or many-to-many relationships, as well as
and their uses.
- Storing multiple values in Arrays
- Useful Functions and Operators
- Using Objects as Maps
- Sets, Maps and Others
A lot of developers are familiar with the concept classes in OO programming. We can use the class pattern to mimic this functionality
- Creating your own Objects using Constructors
- Class syntax
- Using Properties to encapsulate your fields
- The 'this' keyword explained
In this module we'll see how to make our code run asynchronously.
- Using Callbacks
- Event Handling
- Working with Promises
- Async and Await
use Babel. It's soo good... If your face looks like a big question mark right now, that's quite normal. Setting up a
- Using Libraries
- Content Delivery Networks
- Getting Libraries with npm
- Modules versus the Global Object
- Using Task Runners like Gulp
- Bundling and Minification Tools like WebPack
- PolyFills and Traspilers like Babel and TypeScript
- Tools for Code Quality
Browser Interaction with jQuery
is a great first library to learn how to interact with the DOM and makes many common tasks trivial. popular parts include
selectors, event handling, making ajax call, animations, ...
- The jQuery Ecosystem
- Querying with CSS selectors
- Generating HTML
- Setting Attributes and Properties
- Styling from Code
- Dealing with Forms
- Event handling with jQuery
- Comparing jQuery with other UI libraries
This module is about communicating with the backend. REST allows client-server communication using HTTP.
- Verbs and URLs
- XML and JSON format
- Example with node.js and Express
Client-side Service Consumption
By using AJAX we can call server-side actions from our client-side code and process the results in a quick, user-friendly
- Getting data using AJAX
- Fetch API
- External Libraries