I had an urge to learn web development, except the sheer amount of stuff out there available to build a website with was incredibly disorientating. As I went around researching each technology/language/framework, I wrote one sentence definitions of them for myself. I’m putting it here and I will update it as I keep learning.
Frontend - Part of the website the user interacts with
Backend - Stuff on the server
HTML - Holds the content of the webpage
CSS - Makes the webpage have formatting and cool colors
Sass - Makes CSS better and allows you to have variables and logic
JavaScript - Allows your website to have dynamic stuff like animations or interactivity
EJS - Generates HTML from Javascript code, not to be confused with Express, Ext JS, ES6
JQuery - A library that allows you to do things that’d take a couple of lines of code in JS in a single line
Ajax - Not a technology but a technique that allows you to update part of a webpage without reloading the whole thing
Bootstrap - A library that allows you to make nice looking websites really fast by including HTML, CSS, and JS templates for things
Node JS - Allows you to have your server run JavaScript. Useful because now you only need to learn JS to do frontend and backend development
Express - Simplifies some tasks in Node JS
PHP - JavaScript but old and different. Used for backend
JSON - Data storage format
XML - JSON but worse
MongoDB - Fancy JSON database
SQL - A language for querying a database
TypeScript - A superset of Javascript which adds static typing
Flask - Python backend framework
Django - Flask but with more built in
Terraform - Create and manage a server on AWS / Azure using code rather than their website
Docker - Rather than use a virtual machine, let the apps share the OS without interfering with each other
Angular - A framework which allows you to create reusable components using Typescript for the front end
React - Angular but different
Redux - Instead of passing data around, put it somewhere central so it can be accessed from many places.