CSS Layout

There are several tools to arrange content on a webpage, including floats, positioning, Flexbox and Grid. Each has its own advantages, but generally I prefer flexbox for relatively simple projects.

HTML Tables & Forms

Keeping track of all the required attributes of form elements and what they do is tedious and, as Art Moore would say, "lookupable". The same is true of HTML tables.

Sass & SCSS

Large projects become tedious because many elements will share similar properties and require repetitive code. Sass provides a way to apply styles to many different elements without having to constantly repeat the same lines of code.

Javascript Basics & Syntax

Javascript functionality is in many ways similar to Python, my native language, but the syntax is different and keeping them straight can be annoying.

Javascript Iteration

There's lots of handy ways to iterate over elements of an array that make for loops and whatnot unnecessary in some cases. Here's a couple handy guides.

The DOM

The process of adding interactivity to a website has many moving parts, all stemming from the idea of the Document Object Model. There are too many methods to remember offhand, so here are some references.

SVGs & Animations

Scalable Vector Graphics are very nice for creating sharp images of any size and animating them, but implementing them in code is very tedious.

Object-oriented Javascript

Objects in Javascript are an extremely useful way of storing data in various forms, especially when you expect variables to change throughout the course of a script.

AJAX

Interacting with other websites, databases, servers, etc... is clearly crucial, and AJAX provides a way to do this asynchronously.

Fetch

Fetch is a much more streamlined and powerful way to interact with other websites and abstracts away many of the complications associated with AJAX.

Bootstrap

Bootstrap has lots of built-in styles and behaviors that make it easy to rapidly develop web pages. I used it a bit in my portfolio.

Github pages

Github allows users to host live websites! Here's how:

HTTP

The Hypertext Transfer Protocol is what browsers & servers use to communicate. It's very tedious and is usually obscured by the visual smoothness of the browser, but I expect to need to know how to automate HTTP requests at some point.