Languages - sparkbox/fundamentals-cohort GitHub Wiki
HTML | CSS | Javascript
π HTML
Learning Objectives
- Semantic HTML
Resources
Resources
Practice
π CSS
Learning Objectives
- Know how to use the BEM naming convention and ITCSS for CSS organization and why they are helpful
- Know how to validate your compiled CSS and resolve errors
Resources
- CSS Almanac on CSS-Tricks
- Of Mice and BEM: Getting Past Common Problems with CSS Organization on the Foundry
- BEM By Example on the Foundry
- Thoughtful CSS Architecture
- CSS Validator from W3C
- How to Style HTML with CSS on Digital Ocean
- Sassmeister is an online tool that allows you to examine the output of your Scss/Sass code
- CSS Specifishity for understanding CSS specificity
Practice
- Complete all of the levels of Flexbox Froggy or Grid Garden
- Compete in a CSS Battle - challenge a Sparkboxer and compare your solutions
- Play CSS Speedrun to practice CSS selectors
π Javascript
Learning Objectives
- Understand multi-paradigm nature of JavaScript and when to apply different paradigms:
- Object Oriented Programming
- Functional Programming
- Procedural Programming
Resources
- JavaScript AllongΓ© is a deep dive into the building blocks of JavaScript and book of recipes to use those building blocks.
- Composing Software is an exploration of Functional and Object Oriented programming in JavaScript.
- Learning JavaScript Design Patterns is collection of useful front-end patterns for JavaScript, rendering and performance.
Practice
π Typescript
Learning Objectives
- Understand static typing and its benefits and drawbacks
- Know how to define your own types and best practices surrounding type definitions