Typing a convict config schema
How can we map config options to return types in a convict config schema?
How can we run an app in a reproducible isolated environment?
The OAuth Protocol
How can a user allow an app to access user data at a third-party service?
Configuring, tracking, staging, committing, tagging, branching, merging, remotes...
Just JavaScript by Dan Abramov
Summary of Dan Abramov's mental model on primitives and special values, expressions, immutability, object properties, prototypes, variables, evaluation, assignment, etc.
JavaScript Hard Parts by Will Sentance
Summary of Will Sentance's JavaScript Hard Parts Series, encompassing the execution model (call stack, scope, closure and async), object-oriented programming, and functional programming (immutability and composition).
Pointers in C
Working with pointers in C: declaration, initialization, getting a memory address, getting and changing a value, purpose of pointers, etc.
Big O Notation
Understanding Big O notation, approximations when determining runtimes, and classification of runtimes: constant, logarithmic, linear, quasilinear, quadratic, exponential, factorial, etc.
Behavioral Design Patterns
Summary of all the behavioral design patterns: memento, state, iterator, strategy, observer, command, template method, mediator, chain of responsibility, and visitor.
Structural Design Patterns
Summary of all the structural design patterns: composite, adapter, decorator, facade, flyweight, bridge, and proxy.
Hash Tables
Understanding what hash tables are and how they work, collisions, common operations, etc.
Arrays and Linked Lists
Features and implementation of linked lists and arrays, singly and doubly linked lists, circular linked lists, common operations, etc.
Stacks and Queues
A stack is container where pieces of data enter and exit from a single end, following the last-in-first-out (LIFO) principle.
Trees, nodes, binary trees, breadth-first search, depth-first search, pre-order, in-order and post-order traversal, common operations, etc.
Graphs, cycles, adjacency matrix and adjacency list, implementations, etc.
Recursion is when a function calls itself, reducing a task to smaller subtasks until reaching a base subtask that it can perform without calling itself, and then using the result of that base subtask in the smaller subtasks until reaching a final result.
Sort Algorithms
Bubble sort, selection sort, insertion sort, merge sort, quick sort, counting sort, bucket sort, etc.
Search Algorithms
Linear search, binary search, ternary search, jump search, exponential search, etc.
Heaps and Tries
A heap is a type of tree with two properties: completion and heap property. A heap is complete, i.e. every level is fully filled, or has nodes inserted consecutively from left to right.
Flutter State Management with Provider
Managing state in Flutter with Provider: ChangeNotifier, ChangeNotifierProvider, Provider.of, Consumer<T>, etc.
#flutter #dart
Flutter UI
Notes on Flutter UI: assets, app icon, splash screen, themes, fonts, images, widgets, gestures, etc.
How to work with PyQt: setup, QtDesigner, free-form design, event handling, intercepting events, fbs, styling, etc.
#python #qt
Flutter Basics
Notes on Flutter: commands, VSCode tips, navigation, networking, persistence, releasing, etc.
Firebase Basics
Notes on Firebase and Jeff Delaney's courses: setup, data modeling, CRUD ops, composite index, data relationships, etc.
Operations, operators, modifiers, data types, constraints, aggregate functions, numeric functions, string functions, date functions, conditional functions, subqueries, views, stored procedures, triggers, events, transactions, concurrency, database design, indexing, etc.
JavaScript OOP
Object-Oriented Programming in JavaScript: principles, object creation, factory functions, constructor functions, classes, prototypes, composition, inheritance, static methods, getters and setters, etc.