"Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it." - Alan J. Perlis
"The competent programmer is fully aware of the limited size of his own skull. He therefore approaches his task with full humility, and avoids clever tricks like the plague." - Edsger Dijkstra
In C++11 unordered_map provides hash tables for keys and values of any type (including custom classes).
GCP vs AWS billing structure - Multiple billing accounts per project VS 1 billing account per aws account - Billing per project VS per sub-account - Policies at account, org, folder or project level VS org and account level
Big O complexities, from worst to best: - N! - c^N - N^c - NlogN - N - sqrt(N) - log^2(N) - logN - logN/log(log(N)) - log(log(N)) - Hyperloglog - Inverse of the Ackermann function - 1
Parameters for client-server architectures: - Blocking vs non-blocking I/o: (1 vs multiple connections per thread) - Single or batch requests - Timeouts: How much to wait? - Retries with exponential backoff & jitter - Circuit breakers: to stop operations likely to fail
Distributed system: collection of independent computers that appears as one to its end users Characteristics: - They operater concurrently - They can fail independently - They do not share a global clock
I'd rather answer 1000 "silly" questions than be blocked for weeks for fear of asking
Algol (ALGOrithmic Language) was created in 1958 It has inspired the syntax of many modern language : Pascal, C, C++, Java.... Algol is considered to be amongst the most influential early programming languages
4 Common stack interview questions 1. Polish notation calculator 2. Implement a stack using a. 1 Array and b.1 Linked list 3. Design a stack with min/max in O(1) 4. Implement a queue with 2 stacks Try to solve them (easily googable)
3 JavaScript interview questions How many ways can a function be invoked? What's the difference between a function expression and function declaration? What is event.currentTarget?
Start writing down ideas for any projects you want to make. Anything can trigger an idea. The more you read and learn, the more opportunities to spark ideas for projects
Continuous attention to technical excellence and good design enhances agility agilemanifesto .org