-
DRY - > Don't Repeat Yourself
-
KISS - > Keep it simple stupid
-
solution in search of a problem" syndrome!
-
EIBTI - > Explicit is better than implicit.
“Metaclasses are deeper magic than 99% of users should ever worry about. If you wonder whether you need them, you don’t (the people who actually need them know with certainty that they need them, and don’t need an explanation about why).”—Tim Peters
- Domain Driven Design
- Google Search URL args ID:
&biw=1536&bih=674&tbm=isch&sxsrf=ACYBGNSXXpS6YmAKUiLKKBs6xWb4uUY5gA:1581168823770&source=lnms&sa=X&ved=0ahUKEwioj8jwiMLnAhW9AhAIHbXTBMMQ_AUI3QUoAQ
-
Memoization
- Functional programming
- Automatic memoization
-
Referential transparency
-
Computational complexity theory
-
closures
-
decorator pattern
-
Function object
-
Infrastructure plumbing
-
Natural language processing
-
heap queue algorithm / priority queue algorithm.
- Rich Internet application (RIA)
-
Circular buffer circular buffer, circular queue, cyclic buffer or ring buffer
-
ETL (Extract Transform Load) problem.
-
Abstract data type | ADT
-
data abstraction
-
encapsulation
-
information hiding
-
implementation-independent
-
order of magnitude
-
Linear Structures
-
abstract data types stack | queue | deque | list
-
ADTs stack
-
prefix | infix | postfix | Infix, Prefix, and Postfix Expressions
-
Procedural
-
Functional
-
Object Oriented Programming
-
Design Pattern
-
nested function scope closures a.k.a. factory functions)
-
declarative language
-
Metaprogramming | Metaprogram
-
introspection
- incremental prototyping
-
state information —descriptive data saved on an object for later use.
-
object factory
-
encapsulation
-
attributes | Property
-
pseudoprivate class attributes (__attr or attr)
-
Python's object persistence
-
abstract superclass
- operator overloading
- Software release life cycle
-
Mail User Agent
-
Session Initiation Protocol (SIP)
-
Webmaster
-
RFC 1945
-
Robots exclusion standard
-
Referer
- automated agents (bots)
- User agent spoofing
- User agent sniffing
- Encryption strength notations
- Deprecation of User-Agent header
-
"Accept-Encoding": "gzip, deflate"
-
HTTP keep-alive / HTTP connection reuse / HTTP persistent connection
-
chunked transfer encoding
-
CA Certificates
-
Digest Authentication
-
multiprocessing | hreading | asyncio
-
Global Interpreter Lock (GIL)
-
mutual-exclusion lock (mutex)
-
deadlock
-
Concurrency and parallelism
-
embarrassinbly parallel / perfectly parallel computations:
- Monte Carlo analysis
- numerical integration
- rendering of computer graphics
- brute force searches in cryptography
- genetic algorithms
-
Process vs thread
-
children & Zombies
-
Process
-
Pool
-
Daemon Processes
-
Data Buffer
-
FIFO QUEUE | LIFO QUEUE
-
mutual-exclusion locks (mutexes)
UI/UX UI design
-
Flat Files | CSV files
-
I/O overhead
-
Index
-
shelve object-oriented database.
-
Object-relational mappers (ORMs)
-
SQLite is a transactional database that all changes and queries are atomic, consistent, isolated and durable: ACID
-
ACID-compliant
-
truncate optimization
-
FTS5
-
SQLite full-text search
-
primitive data types = > storage classes
-
Index | B-tree = balanced tree