Last active
May 1, 2023 13:25
-
-
Save ronsims2/98ef8d3be1dc82b71bc535e89e3461a3 to your computer and use it in GitHub Desktop.
Web Dev Skills Inventory - A growing list of what you need to know to be a web dev
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## JS Fundamentals | |
data types | coersion | int vs float, strings, numerics | |
data structures | classic (array, object) | newer (map, frozen objects) | |
functions | named, anonymous, lambdas, | |
prototype | inheritance, this keyword | |
data types | coercion | int vs float, string numerics | |
logic expression | |
regular expressions | |
date and time | |
loops | |
promises | |
error handling | |
## Advanced JS | |
OOP patterns | singleton, factory, module, mixins, plugin, builder, etc | |
closures | privacy | |
Functional JS | higher order functions | immutability, map, reduce, filter | |
memory management, garbage collection, memory leaks | |
bitwise operation | |
essential libraries | Ever changing list | |
optimizations | unrolling loops | |
async/await | |
# TypeScript | |
generics | |
## Basic DOM | |
HTML elements | attributes | |
create documents and elements | |
selecting elements | querySelector, querySelectorAll getElementById, getElementByClassName | |
preloading images | |
innerHTML vs innerText | |
events | |
## Advanced DOM | |
append vs appendChild | |
dataset | |
events | event handlers vs inline event handlers | |
event loop | single threaded rendering | |
## Runtime | |
Eventloop | |
Webworkers | |
Fetch API | |
File API | |
Drag Drop | |
URL API | |
UI | touch and pointer events | |
Storage | localstorage/sessionstorage, IndexDB | |
UserAgent | |
Canvas | |
debugging | debugger, console | |
## SVG | |
## WebAssembly | |
## Basic Node | |
fs | |
http | |
process | |
require | |
nvm | |
npm | |
## Advanced Node | |
Express, Fastify, Hapi, etc | middleware | |
document databases | MongoDB, Firebase Realtime DB, etc | |
toolchain | task runners, bundlers, linters, transpiler, assertion suites & test runners | |
node-gyp kungfu | |
ssl kungfu | |
# OS | |
git | fetch, merge, rebase, cherry-picking, log, reflog, tagging | |
terminal | bash, shell vars, scripting | |
package management | brew, apt, pacman | |
ssh | |
sc | |
jq | |
awk/sed | |
sftp | |
ssl, keygen | |
ip, ifconfig, ipconfig | |
grep | |
## web frameworks basics | |
project setup | |
proxy set up | |
app structure | |
## React | |
components | propers, rendering | |
component state | useState | |
refs | |
useEffect | |
thunks/sagas | |
HOCs | |
React Testing Library | |
Forms | |
# Advanced React | |
context | |
useReducer | |
Redux | and other state management libraries for application state | |
useEffect | yeah its hard to master | |
Rewriting classes to functional components | |
React Testing Library | bc it gets hard writing integration test | |
Design patterns | |
## Deployment | |
Building projects | |
hosting | |
## UI/UX | |
Animation | |
Layout | box modeling, flexbox, grid, center, centering, centering | |
CSS tools | sass (variables, mixins, utilities), less, BEM | |
CSS in JS | |
tailwind | |
inline styles | |
units | pixels, rem, em, percentages | |
visibility and display | |
height and width rules | |
float madness | |
css functions and variables | |
## Data | |
SQL | |
No-SQL | |
flat files |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment