-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbackup.json
More file actions
210 lines (210 loc) · 22 KB
/
Copy pathbackup.json
File metadata and controls
210 lines (210 loc) · 22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
[
{
"title": "System Software",
"content": "System software is the bridge between [[Hardware]] and user-facing applications. It manages the computer's resources and provides the environment for high-level operations defined by [[Programming]].\n\nCore pillars:\n\n* [[Operating Systems]]: The fundamental manager of hardware and software resources.\n* [[Device Drivers]]: The specialized translators for [[Hardware]] communication.\n* [[Utilities]]: The tools for maintenance, optimization, and system management within the [[Infrastructure]].\n\n[[Hardware]] provides the capability; [[system software]] provides the functionality."
},
{
"title": "Programming",
"content": "Programming is the systematic process of designing, writing, testing, and maintaining source code to solve complex problems. It is the core language of instructions that governs how [[Software]] behaves.\n\nCore pillars:\n- [[Algorithms]]: The logical foundation of operations.\n- [[Software]]: The actual product or system execution.\n- [[Web Development]]: The delivery medium for modern applications.\n\n\"Code is not just syntax; it is intent manifested in logic.\""
},
{
"title": "Infrastructure",
"content": "Infrastructure is the skeleton of the digital world. It is the combination of physical and logical components that ensure systems remain operational, scalable, and reachable.\n\nCore components:\n\n[[Software]]: The logic layer.\n\n[[Hardware]]: The physical foundation.\n\n[[Networking]]: The distribution layer.\n\n[[companys]]\n\nIt is the unsung hero of uptime. If the infrastructure fails, the entire stack collapses."
},
{
"title": "Bandwidth",
"content": "Bandwidth is the raw capacity of your connection. It is the size of the pipe, not the speed of the water. It represents the maximum amount of data that can be transmitted over a network path in a given timeframe.\n\nCore aspects:\n- [[Capacity]]: The theoretical maximum.\n- [[Measurement]]: Expressed in bits per second (bps, Gbps).\n- [[Bottleneck]]: The narrowest point determines the total bandwidth.\n\nHaving high bandwidth does not mean low [[Latency]], and it definitely doesn't guarantee high [[Throughput]] if the connection is unstable."
},
{
"title": "Throughput",
"content": "Throughput is the actual rate at which data is successfully delivered over a communication channel. It is the real-world measure of efficiency, often lower than the theoretical [[Bandwidth]] due to overhead and congestion.\n\nCore aspects:\n- [[Bandwidth]]: The theoretical maximum capacity.\n- [[Overhead]]: Data lost to protocol headers and retransmissions.\n- [[Congestion]]: Network traffic bottlenecks that throttle effective speed.\n\nYou can have high bandwidth and low throughput if the connection is unreliable or the system is choked."
},
{
"title": "Flow Control",
"content": "Flow control is the mechanism that prevents a sender from overwhelming a receiver. It ensures that data transmission speed matches the receiver's processing capacity or available [[Buffer]] space.\n\nCore aspects:\n- [[Stop-and-Wait]]: Simplest form; send one, wait for ACK, send next.\n- [[Sliding Window]]: Allows multiple packets in transit; more efficient than stop-and-wait.\n- [[Feedback Loop]]: Receiver constantly updates the sender on how much data it can handle.\n\nIt is the reason your connection remains stable even when the receiver is under heavy load."
},
{
"title": "Buffer",
"content": "Buffer is the waiting room for data. When the producer generates information faster than the consumer can process it - or vice versa - the buffer catches the overflow to ensure seamless operation.\n\nCore components:\n\n[[Flow Control]]: The mechanism to prevent data loss when the receiver is overwhelmed.\n\n[[Jitter]] Mitigation: Smoothing out inconsistent arrival times in streams.\n\n[[Throughput]]: Maintaining consistent data flow despite speed mismatches.\n\nIt is the essential shock absorber for any system where [[Networking]] or [[Hardware]] speeds fluctuate."
},
{
"title": "Protocols",
"content": "Protocols are the language of machines. They are the rigid, non-negotiable sets of rules that dictate how data is formatted, transmitted, and interpreted by all parties involved.\n\nCore components:\n\n[[HTTP]]: The language of the web.\n\n[[TCP/IP]]: The foundation of global data routing.\n\n[[Networking]]: The environment where these rules are enforced.\n\nWithout protocols, connection is just noise."
},
{
"title": "Networking",
"content": "Networking is the connective tissue of the digital world. It is the architecture that allows disparate nodes to exchange information reliably across global distances.\n\nCore components:\n\n[[Latency]]: The unavoidable delay.\n\n[[RTT]]: The heartbeat of the connection.\n\n[[Jitter]]: The variance in signal consistency.\n\n[[Medium]]: The physical channel for data flow.\n\nIt is the reason your machine is never truly alone."
},
{
"title": "Python",
"content": "A versatile, high-level programming language known for its readability and vast ecosystem. It is the powerhouse of modern backend development.\n\nKey concepts:\n- Syntax simplicity\n- Libraries (e.g., Pandas, Requests)\n- Integration with frameworks like [[Django]]\n\nDirectly connects to: [[Backend]], [[Programming]]"
},
{
"title": "Medium",
"content": "The transmission medium is the physical path between the sender and the receiver. It is the literal channel through which data flows. Every medium imposes its own physics on the signal, directly dictating the [[Propagation Delay]].\n\nCore types:\n- [[Guided]]: Physical channels like Copper or Fiber Optic where the signal is constrained.\n- [[Unguided]]: Wireless channels like Radio waves or Microwaves where the signal propagates through free space.\n\nChoosing the right medium is the fundamental constraint of network architecture."
},
{
"title": "Propagation Delay",
"content": "Propagation Delay is the physical speed limit. It is the time required for a signal to physically travel through the medium - whether it is fiber optic cable, copper, or air.\n\nCore aspects:\n- [[Physics]]: You cannot beat the speed of light.\n- [[Distance]]: The longer the cable, the higher the delay.\n- [[Medium]]: Different materials transmit signals at different speeds.\n\nYou cannot optimize your way past this; it is an immutable constraint of the universe."
},
{
"title": "Jitter",
"content": "Jitter is the enemy of consistency. It is the variation in the time it takes for packets to arrive. While latency is the average delay, jitter is the volatility of that delay.\n\nCore aspects:\n- [[Packet Arrival]]: The timing sequence.\n- [[Real-time Streams]]: Crucial for VoIP and video calls; high jitter ruins the experience.\n- [[Buffer]]: Often used to smooth out jitter at the cost of latency.\n\nStable latency is better than low, but inconsistent latency."
},
{
"title": "RTT",
"content": "RTT stands for Round Trip Time is the heartbeat of a network request. It is the total time elapsed for a signal to leave your machine, reach the destination, and return with a response. It is the fundamental metric for responsiveness.\n\nCore aspects:\n- [[Latency]]: The total time cost.\n- [[Client-Server]]: The two endpoints of the trip.\n- [[Network Congestion]]: Often the primary factor causing high RTT.\n\nIf RTT is high, the application feels sluggish regardless of your raw bandwidth."
},
{
"title": "Latency",
"content": "Latency is the hidden tax on performance. It is the time gap between an action (request) and the response. It is not about how much data you move, but how long you wait for the process to begin.\n\nCore aspects:\n- [[RTT]] (Round Trip Time): The time for a packet to go to the destination and back.\n- [[Jitter]]: The variation in latency over time.\n- [[Propagation Delay]]: The physical time limit for signals to travel through a medium.\n\nIn computing, it is the primary enemy of real-time systems, often more critical than raw bandwidth."
},
{
"title": "Cache",
"content": "Cache is the memory hierarchy's speed demon. It exists solely to prevent the [[CPU]] from waiting on slower system [[Memory]]. It is the predictive buffer placed directly on or next to the processor to hold frequently used data.\n\nCore aspects:\n- [[L1/L2/L3 Cache]]: Different tiers of proximity to the core. L1 is tiny and instant, L3 is larger but slower.\n- [[Hit Rate]]: The efficiency metric; the percentage of time the required data is actually found in the cache.\n- [[Latency]]: The unavoidable time cost of missing the cache and fetching from [[RAM]].\n\nIt is the reason your system isn't constantly bottlenecked by memory speed."
},
{
"title": "RAM",
"content": "RAM stands for Random Access Memory is the volatile workspace of the system. It is not permanent storage; it is the high-speed scratchpad where the [[CPU]] processes active data. Everything here is fleeting—once the power cuts, the memory clears.\n\nCore aspects:\n- [[Volatility]]: The state of being lost without power.\n- [[Latency]]: The time cost of retrieving data.\n- [[Bandwidth]]: The volume of data moved per second.\n\nIt serves as the critical bridge between the long-term storage and the [[CPU]]."
},
{
"title": "Memory",
"content": "Volatile, high-speed workspace. It holds the active data and instructions that the processor needs immediately.\n\nCore aspects:\n\n[[RAM]]: Random Access Memory; ephemeral storage.\n\n[[Latency]]: The time cost of data retrieval.\n\n[[Cache]]: The ultra-fast buffer closest to the core.\n\nWithout it, the system has no short-term \"thought\" process."
},
{
"title": "GPU",
"content": "Graphics Processing Unit. An accelerator built for massive parallel processing rather than sequential logic.\n\nCore aspects:\n\n[[Parallelism]]: Calculating thousands of tasks simultaneously.\n\n[[Tensor Cores]]: Hardware optimized for [[Deep Learning]].\n\n[[VRAM]]: Dedicated memory for high-speed data access.\n\nIt offloads intense mathematical burdens from the [[CPU]]."
},
{
"title": "CPU",
"content": "The Central Processing Unit is the primary logic engine of any system. It fetches, decodes, and executes instructions at lightning speed.\n\nCore aspects:\n\n[[Instruction Set]]: The binary language the processor speaks.\n\n[[Clock Speed]]: The rhythm of operation (Hz).\n\n[[Cores]]: Parallel execution units.\n\nIt acts as the primary orchestrator for all [[Software]] operations."
},
{
"title": "Tensors",
"content": "The fundamental data structure in [[PyTorch]]. Multi-dimensional arrays that support automatic differentiation and [[GPU]] acceleration for massive parallel computation.\n\nKey concepts:\n- [[Shape and Dtypes]]\n- [[GPU]] vs [[CPU]] memory\n- [[Operations]] (MatMul, Broadcasting)\n\nDirectly connects to: [[PyTorch]], [[Deep Learning]]"
},
{
"title": "Hardware",
"content": "Hardware is the physical machine that haunts the ghost of software. We think in abstractions, but the processor only understands high and low voltage. You aren't writing 'programs' - you are manipulating electricity through optimized sand.\n\nCore Components:\n- [[CPU]]: The brain; executes instructions.\n- [[GPU]]: The accelerator; handles parallel computation.\n- [[Memory]]: The workspace; stores active data.\n\nIt relies on the foundation of [[Physics]] and serves as the physical vessel for all [[Software]]."
},
{
"title": "LLM",
"content": "Advanced neural network models trained on massive text corpora to predict the next token in a sequence. Built on the Transformer architecture, they excel at reasoning, coding, and creative generation. Stands for Large Language Model.\n\nKey concepts:\n- Pre-training: Learning general patterns and knowledge from vast, unlabeled datasets.\n- Fine-tuning: Adapting a pre-trained model for specific domains or tasks using smaller, labeled datasets.\n- Tokenization: The process of converting raw human text into numerical tokens (vectors) that the model can process.\n- Prompting: Engineering input context to steer and optimize model output.\n\nDirectly connects to: [[Transformers]], [[Deep Learning]]"
},
{
"title": "Transformers",
"content": "Deep learning architecture that uses self-attention mechanisms to process sequential data in parallel. The core foundation of modern [[LLM]]s.\n\nKey concepts:\n- Self-Attention\n- Encoder-Decoder\n- Multi-Head Attention\n- Positional Encoding\n\nDirectly connects to: [[Deep Learning]], [[Neural Networks]]"
},
{
"title": "Operations",
"content": "Mathematical functions acting on tensors. The core engine of data processing in [[deep learning]].\n\nKey concepts:\n- Broadcasting: Automatically aligning tensor shapes for arithmetic without explicit replication (saving memory).\n- MatMul (Matrix Multiplication): The foundation of linear layers. In hardware, this is executed by GEMM (General Matrix Multiply) kernels for high performance.\n- In-place: Modifications applied directly to the original memory address rather than creating a copy. Denoted by an underscore suffix in PyTorch (e.g., add_()). Critical for VRAM (Video RAM) optimization.\n- Element-wise: Operations applied index-by-index (e.g., adding two tensors of the same shape)."
},
{
"title": "GPU vs CPU",
"content": "The hardware allocation strategy. CPUs handle complex logic stands for Central Processing Unit, GPUs handle massive parallel data processing stands for Graphics Processing Unit. Data must be moved to the correct device before computation.\n\nKey concepts:\n- Device placement (.to('cuda'))\n- Data transfer latency\n- VRAM constraints\n\nDirectly connects to: [[Tensors]]"
},
{
"title": "Shape and Dtypes",
"content": "The metadata defining a tensor. 'Shape' defines the dimensions (e.g., 2x3x5), and 'Dtypes' defines the precision (e.g., float32, int64).\n\nKey concepts:\n- Dimensionality (Rank)\n- Precision (Memory usage)\n- Type casting\n\nDirectly connects to: [[Tensors]]"
},
{
"title": "PyTorch",
"content": "A deep learning framework developed by Facebook's AI Research lab. Known for dynamic computational graphs and pythonic nature.\n\nKey concepts:\n- [[Tensors]] (GPU acceleration)\n- Autograd\n- Dynamic Graph Execution\n\nDirectly connects to: [[Deep Learning]]"
},
{
"title": "TensorFlow",
"content": "An end-to-end open-source platform for machine learning. Industry standard for deploying models at scale.\n\nKey concepts:\n- Keras API\n- Static/Dynamic Graphs\n- Deployment (TFLite, TFServing)\n\nDirectly connects to: [[Deep Learning]]"
},
{
"title": "Gradient Descent",
"content": "The optimization algorithm used to minimize the cost function by iteratively moving toward the steepest descent.\n\nKey concepts:\n- Learning Rate\n- Cost Function\n- Local/Global Minima\n\nDirectly connects to: [[Deep Learning]]"
},
{
"title": "Backpropagation",
"content": "The fundamental algorithm for training neural networks. It calculates the gradient of the loss function with respect to weights by propagating errors backward.\n\nKey concepts:\n- Chain Rule\n- Error calculation\n- Weight updates\n\nDirectly connects to: [[Deep Learning]]"
},
{
"title": "Neural Networks",
"content": "Mathematical models inspired by biological brain structure. Consists of layers (Input, Hidden, Output) where neurons compute weighted sums of inputs.\n\nKey concepts:\n- Activation Functions (ReLU, Sigmoid)\n- Weights & Biases\n- Architecture (CNN, RNN, Transformers)\n\nDirectly connects to: [[Deep Learning]]"
},
{
"title": "Deep Learning",
"content": "A subset of Machine Learning based on artificial neural networks. Mimics the human brain to learn patterns from vast datasets.\n\nKey concepts:\n- [[Neural Networks]]\n- [[Backpropagation]]\n- [[Gradient Descent]]\n\nDirectly connects to: [[Programming]], [[Algorithms]], [[Python]]"
},
{
"title": "DOM",
"content": "Document Object Model. A tree-like interface for HTML documents designed for programming languages. A tool for dynamically controlling page content, style, and structure via JavaScript.\n\nKey concepts:\n- Nodes & Elements\n- Event Listeners\n- Tree Structure\n\nDirectly connects to: [[HTML]], [[JavaScript]]"
},
{
"title": "CS50",
"content": "The quintessential introduction to computer science. It provides the intellectual framework for understanding how hardware and software truly interact.\n\nKey concepts:\n- Memory management & Pointers\n- Complexity (Big O notation)\n- Data Structures (Arrays, Linked Lists, Trees)\n- Foundations of [[Algorithms]]\n\nDirectly connects to: [[Programming]], [[Algorithms]]"
},
{
"title": "Design Patterns",
"content": "Proven, reusable solutions to common problems in software design. They represent best practices accumulated over time.\n\nKey concepts:\n- Singleton\n- Factory\n- Observer\n\nDirectly connects to: [[Programming]]"
},
{
"title": "Debuging",
"content": "The systematic process of identifying, analyzing, and removing bugs or errors from software.\n\nKey concepts:\n- Breakpoints and Logging\n- Stack Traces\n- Rubber Duck Debugging\n\nDirectly connects to: [[Programming]]"
},
{
"title": "Clean Code",
"content": "Writing code that is easy to read, understand, and maintain. Prioritizes human readability over machine execution.\n\nKey concepts:\n- Meaningful naming\n- DRY (Don't Repeat Yourself) principle\n- Small, focused functions\n\nDirectly connects to: [[Programming]]"
},
{
"title": "Firebase",
"content": "A platform developed by Google that provides tools for building mobile and web applications. It includes a NoSQL real-time database.\n\nKey concepts:\n- Real-time data synchronization\n- Authentication\n- Cloud Functions\n\nDirectly connects to: [[Database]]"
},
{
"title": "SQL",
"content": "Structured Query Language. The standard language for managing and manipulating relational databases.\n\nKey concepts:\n- Tables and Rows\n- Queries (SELECT, INSERT, UPDATE, DELETE)\n- Joins and Relationships\n\nDirectly connects to: [[Database]]"
},
{
"title": "Git",
"content": "A distributed version control system that tracks changes in source code during software development. It allows for collaboration, history tracking, and safe experimentation.\n\nKey concepts:\n- Repositories (Local & Remote)\n- Commits & Branches\n- Merging & Pull Requests\n\nDirectly connects to: [[Programming]]"
},
{
"title": "API",
"content": "Application Programming Interface. A set of rules that allow different software entities to communicate. In the backend, it acts as the bridge between the client and the server.\n\nKey concepts:\n- RESTful principles\n- Request/Response cycle\n- JSON data format\n\nDirectly connects to: [[Backend]]"
},
{
"title": "Django",
"content": "A high-level Python web framework that encourages rapid development and clean, pragmatic design. It is \"batteries-included,\" providing built-in features for authentication and admin interfaces.\n\nKey concepts:\n- ORM (Object-Relational Mapping)\n- Security (CSRF, SQL Injection protection)\n- Admin Panel\n\nDirectly connects to: [[Backend]]"
},
{
"title": "JavaScript",
"content": "The programming language of the web. It enables interactive features, dynamic content updates, and complex logic on the client side.\n\nKey concepts:\n- DOM Manipulation\n- Asynchronous Programming (fetch/promises)\n- ES6+ features\n\nDirectly connects to: [[Frontend]]"
},
{
"title": "CSS",
"content": "The stylesheet language used to describe the presentation of a document written in [[HTML]]. It handles layout, colors, and fonts.\n\nKey concepts:\n- Box Model\n- Flexbox and Grid\n- Responsive Design\n\nDirectly connects to: [[Frontend]]"
},
{
"title": "HTML",
"content": "The standard markup language for creating the structure of web pages. It defines the \"skeleton\" of the content.\n\nKey concepts:\n- [[DOM]] (Document Object Model)\n- Semantic elements (header, main, footer)\n- Integration with [[CSS]] and [[JavaScript]]\n\nDirectly connects to: [[Frontend]]"
},
{
"title": "Database",
"content": "The storage layer for persistent application data. Ensures data integrity and efficient retrieval.\n\nKey Technologies:\n- [[SQL]]\n- [[Firebase]]\n\nDirectly connects to: [[Web Development]]"
},
{
"title": "Backend",
"content": "The server-side engine. Handles business logic, authentication, and API communication.\n\nKey Technologies:\n- [[Python]]\n- [[Django]]\n- [[API]]\n\nDirectly connects to: [[Web Development]]"
},
{
"title": "Frontend",
"content": "The user-facing layer of an application. Converts design into interactive experiences.\n\nKey Technologies:\n- [[HTML]]\n- [[CSS]]\n- [[JavaScript]]\n\nDirectly connects to: [[Web Development]]"
},
{
"title": "Web Development",
"content": "Web Development is the process of creating and maintaining websites and applications for the internet. It transforms logic into interactive digital experiences.\n\nCore Layers:\n- [[Frontend]]: The user-facing interface.\n- [[Backend]]: The server-side logic and systems.\n- [[Database]]: The storage for application data.\n\nIt relies on the foundation of [[Programming]] and serves as a primary pillar for modern [[Software]]."
},
{
"title": "software",
"content": "Software refers to the collection of programs, data, and instructions that tell a computer how to work. It is the practical realization of [[Programming]] and [[Algorithms]].\n\nKey categories:\n- [[System Software]] (OS, drivers)\n- [[Application Software]] (Apps, browsers)\n\nIt bridges the gap between raw hardware and the user's needs."
},
{
"title": "Algorithms",
"content": "An algorithm is a finite, step-by-step procedure designed to perform a specific task or solve a problem. It serves as the logical backbone of any software. [[software]]\n\nKey aspects:\n- Efficiency (Time and Space Complexity)\n- Logic and Determinism\n- Input and Output\n\nCrucial for efficient [[Programming]]. The performance of an algorithm is often defined by the [[Data Structures]] used to implement it."
}
]