Fundamentals

Showing 100 articles max
IT Learning Made Simple
IT Learning Made Simple
Sep 19, 2026 · Fundamentals

Why Computers See 'A' as 65: The ASCII Encoding Guide

This article explains ASCII encoding, the standard that maps 128 characters to numbers 0-127, detailing control codes, printable characters, extended ASCII, programming applications like character comparison and case conversion, and why ASCII's English-only limitation led to Unicode.

ASCIIASCII tableCharacter Encoding
0 likes · 7 min read
Why Computers See 'A' as 65: The ASCII Encoding Guide
Code Farmer Manor Chronicle
Code Farmer Manor Chronicle
Sep 19, 2026 · Fundamentals

Stop Memorizing All 14 UML Diagrams: Only 7 Are High-Frequency in Daily Development

This article explains UML 2.5's 14 diagram types, categorizes them into structural and behavioral diagrams, highlights the 7 most frequently used diagrams in daily development (class, sequence, state machine, activity, use case, component, deployment), provides a cheat sheet for selecting the right diagram per scenario, and recommends tools like Mermaid and PlantUML.

Activity DiagramMermaidPlantUML
0 likes · 12 min read
Stop Memorizing All 14 UML Diagrams: Only 7 Are High-Frequency in Daily Development
IT Services Circle
IT Services Circle
Sep 19, 2026 · Fundamentals

Why Linux Has /bin and /usr/bin: A 1971 1.5MB Disk Crisis

The split between /bin and /usr/bin originated in 1971 when Ken Thompson and Dennis Ritchie ran out of space on a 1.5MB PDP-11 disk, prompting them to spill overflow commands onto a second disk mounted at /usr—a pragmatic hack later mythologized as intentional design, causing decades of confusion until modern distributions merged them via usrmerge.

Dennis RitchieKen ThompsonLinux
0 likes · 7 min read
Why Linux Has /bin and /usr/bin: A 1971 1.5MB Disk Crisis
Java Captain
Java Captain
Sep 19, 2026 · Fundamentals

Dynamic Programming Mastery: 11 Classic Problems Solved with Recurrences & C Code

This article analyzes 11 classic dynamic programming problems including coin change, edit distance, LCS, LIS, maximum subarray, matrix chain multiplication, 0-1 knapsack, constrained shortest path, tiling with state compression, work allocation, and three-pass apple picking, providing recurrence relations, C implementations, and optimization techniques.

0-1 knapsackcoin changedynamic programming
0 likes · 34 min read
Dynamic Programming Mastery: 11 Classic Problems Solved with Recurrences & C Code
Linux Tech Enthusiast
Linux Tech Enthusiast
Sep 19, 2026 · Fundamentals

Linux Network Stack Complete Guide: Illustrated Deep Dive

This comprehensive illustrated guide covers the entire Linux network stack from physical layer to application layer, detailing protocols like TCP/IP, routing algorithms, DNS, HTTP, and security mechanisms with diagrams and command references.

Linux networkingOSI modelTCP/IP
0 likes · 73 min read
Linux Network Stack Complete Guide: Illustrated Deep Dive
ITPUB
ITPUB
Sep 19, 2026 · Fundamentals

Why DWM.exe Uses So Much Memory: Inside Windows' Desktop Window Manager

This article explains why Windows' Desktop Window Manager (dwm.exe) consumes significant memory and CPU, tracing its evolution from the immediate-mode rendering of Windows XP to the modern compositing model that enables transparency, animations, and stable multitasking by offloading rendering to the GPU.

AeroDesktop Window ManagerGPU acceleration
0 likes · 10 min read
Why DWM.exe Uses So Much Memory: Inside Windows' Desktop Window Manager
21CTO
21CTO
Sep 18, 2026 · Fundamentals

15 Essential Rust Idioms for Writing Safe, Expressive Code

This article explores 15 idiomatic Rust patterns — including Newtype, smart constructors, builder pattern, RAII, composition over inheritance, trait-based strategy, extension traits, typestate, interior mutability, error propagation with ?, static vs dynamic dispatch, From/Into conversions, Option combinators, standard trait implementations, and zero-cost abstractions — that leverage Rust's ownership, type system, and compile-time guarantees to produce safer, more maintainable code.

Builder PatternInterior MutabilityNewtype Pattern
0 likes · 21 min read
15 Essential Rust Idioms for Writing Safe, Expressive Code
Java Tech Enthusiast
Java Tech Enthusiast
Sep 18, 2026 · Fundamentals

The Programmer's Ultimate Revenge: No Comments, Then Quit — And How to Fix Their Mess

A humorous yet practical deep-dive into legacy code horrors — meaningless names, 7-level nesting, 1200-line god methods, magic numbers, and copy-paste duplication — followed by a four-step refactoring playbook (understand, extract, name/comment, optimize) and team-level prevention tactics like code reviews, coding standards, and offboarding rituals.

Code QualityDesign PatternsNaming Conventions
0 likes · 23 min read
The Programmer's Ultimate Revenge: No Comments, Then Quit — And How to Fix Their Mess
AsiaInfo Technology: New Tech Exploration
AsiaInfo Technology: New Tech Exploration
Sep 18, 2026 · Fundamentals

From Ontology to CBE: The Four-Layer Ladder for Flexible Ontology Application

The article distinguishes objective and perspective ontologies, identifies two gaps between static knowledge and dynamic systems, and proposes a four-layer engineering paradigm—Unique Ontology, Perspective Ontology, Component-Based Design, and BIP—to build executable ontology twins for planning and optimization.

BIPComponent-Based EngineeringFlexible Software
0 likes · 27 min read
From Ontology to CBE: The Four-Layer Ladder for Flexible Ontology Application
Model Perspective
Model Perspective
Sep 17, 2026 · Fundamentals

Emergence: How Simple Rules Create Complex Worlds — And Why We Still Can't Predict Them

This article explores emergence — how simple local interactions among many individuals produce complex global patterns like bird flocks, ant trails, and consciousness — covering key examples from Conway's Game of Life to AI, and examining unresolved debates about weak vs. strong emergence, computational irreducibility, and whether macro-level laws are fundamentally real.

AI emergenceBoids algorithmConway's Game of Life
0 likes · 15 min read
Emergence: How Simple Rules Create Complex Worlds — And Why We Still Can't Predict Them
21CTO
21CTO
Sep 17, 2026 · Fundamentals

Unicode 18.0 Adds 13,007 Characters Including Chinese Seal Script

Unicode 18.0 adds 13,007 characters, raising the total to 172,808, highlighted by 11,328 Chinese seal script characters, Jurchen script, nine new emojis, three currency symbols, and a critical security fix for variation selectors to prevent hidden AI injection attacks.

AI securityCharacter EncodingChinese seal script
0 likes · 7 min read
Unicode 18.0 Adds 13,007 Characters Including Chinese Seal Script
Architect's Guide
Architect's Guide
Sep 17, 2026 · Fundamentals

How GeoHash Enables Efficient Nearby Passenger Search in Ride-Hailing Apps

This article explains the GeoHash algorithm, detailing how it converts latitude/longitude into binary strings via recursive bisection, interleaves bits, applies base32 encoding, and uses prefix matching to efficiently find nearby passengers in ride-hailing apps, while noting edge-case limitations.

GeoHashalgorithmbase32 encoding
0 likes · 8 min read
How GeoHash Enables Efficient Nearby Passenger Search in Ride-Hailing Apps
IT Learning Made Simple
IT Learning Made Simple
Sep 16, 2026 · Fundamentals

Why Computers Use Binary: The Engineering Behind 0 and 1

This article explains why computers use binary (0 and 1) instead of decimal, covering the physical reliability of two voltage states, binary counting and conversion methods, how all data types are represented as bit sequences, and the role of Boolean logic and hexadecimal shorthand in computing.

ASCIIbinarybit
0 likes · 8 min read
Why Computers Use Binary: The Engineering Behind 0 and 1
YiSu Grain
YiSu Grain
Sep 16, 2026 · Fundamentals

12 Core Computer Science Problems Solved: CPU, Paging, Normalization & Kubernetes Probes

This article provides detailed solutions and explanations for 12 computer science practice problems covering CPU execution time calculation, bus bandwidth, virtual memory paging, subnet addressing, database normalization (2NF/3NF), lossless join decomposition, UML class diagram notation, Kubernetes probe types, earned value management, deadlock prevention strategies, and common architectural misconceptions.

KubernetesNetworkingOperating Systems
0 likes · 17 min read
12 Core Computer Science Problems Solved: CPU, Paging, Normalization & Kubernetes Probes
samdeepthink
samdeepthink
Sep 16, 2026 · Fundamentals

Java Happens-Before: Visibility Guarantees Beyond Temporal Order

This article demystifies Java's happens-before rules, showing why temporal order doesn't guarantee visibility, and how volatile combined with program order ensures a non-volatile variable's visibility across threads through a concrete code example.

ConcurrencyHappens-BeforeJMM
0 likes · 13 min read
Java Happens-Before: Visibility Guarantees Beyond Temporal Order