- Did a refresher on Memoization
- Did a refresher on Server-Side-Rendering Importance
- Setup and installed TailwindCSS with NextJS
Detailed descriptions below
- useMemo in React
- SPA design patterns; specifically Angular & React
- Breakpoints for sites
- Identifying patterns for solving algorithms
- From Wikipedia:
In computing, memoization or memoisation is an optimization technique used primarily to speed up computer programs by storing the results of expensive function calls and returning the cached result when the same inputs occur again. Memoization has also been used in other contexts (and for purposes other than speed gains), such as in simple mutually recursive descent parsing.
- Common strategy for dynamic programming problems
- Has 2 main approaches
- => Recursive strategy has O(n) time, and O(n) space as the callstack gets built up.
- => Bottom-up computation; has O(n) time as well, but O(1) space as you compute the smallest item 1st.
- Faster time to paint as HTML rendered on server
- => i.e. Users can start reading pages quicker as they don't need to wait for Javascript to download or library like React to load
- More consistent SEO benefit for page indexing | Detail on Benefit
TailwindCSS is a utility directed CSS framework that provides specialized classes that you can use to build and modify components. Instead of defining all components, strong opinions like Bootstrap/react-bootstrap, tailwind provides all the utilities to build your own version of Bootsrap, etc. It requires more up front lifting but creates flexibility that is then achieved by you designing to your needs instead of hacking around the framework.
Tailwind example using NextJS