Fundamentals of Containerization


Diagram showing a container image built from layers running as isolated processes on a shared host kernel

Containerization fundamentals: images, layers, namespaces, cgroups, and why containers make software portable and reproducible across environments.

Fundamentals of Empirical Software Engineering


Diagram showing questions flowing into data collection, analysis, and validated evidence about how software is built and used.

Empirical software engineering fundamentals: how systematic data collection and analysis replace opinion with evidence about how software is built and used.

Fundamentals of Architecture Decision Making


Flow diagram showing a technical choice sorted by significance and reversibility into a fast reversible path or a deliberate irreversible path, then recorded as a decision.

Architecture decision making fundamentals: how to spot decisions that matter, weigh trade-offs, judge reversibility, and record choices with ADRs.

Fundamentals of Data Architecture


Layered diagram showing data flowing from source systems through staging, core, and semantic layers into data products.

Data architecture fundamentals: the staging, core, and semantic layers, why architecture is not tools, and how batch and streaming data land.

Fundamentals of Analytics Engineering


Layered diagram showing raw loaded data flowing through staging, intermediate, and mart models into trusted, tested datasets.

Analytics engineering fundamentals: the role between data engineering and analysis, ELT, the transformation layer, testing, and the semantic layer.

What is Ollama?


Diagram showing Ollama as a local service running AI models on a developer's machine, with API connections from tools and applications

What is Ollama and how does it run large language models locally on consumer hardware?

Fundamentals of Technical Leadership


Diagram showing the technical leadership workflow: credibility, vision, communication, team empowerment, and decision-making in a reinforcing loop.

Learn the fundamentals of technical leadership: credibility, vision, communication, empowerment, and decision-making that turn engineers into leaders.

Fundamentals of Agent Accessibility


Diagram showing the agent accessibility workflow: discoverability, machine-readable interfaces, predictable behavior, and agent-aware error handling.

Agent accessibility fundamentals: make your APIs and software products discoverable, predictable, and usable by AI agents.

Fundamentals of Software Traffic Management


Diagram showing control planes, service meshes, sidecars, and policy-driven routing across distributed services.

Software traffic management fundamentals: control planes, service meshes, sidecars, and routing strategies for resilient distributed systems.

Fundamentals of Software Automation


Diagram showing the automation spectrum from manual tasks through scripted processes to fully automated, self-healing systems.

Software automation fundamentals: core principles, build systems, infrastructure as code, and when automation pays off versus when it creates more problems.

Fundamentals of Concurrency and Parallelism


Diagram showing concurrent tasks interleaving on one core versus parallel tasks running simultaneously on multiple cores.

Concurrency and parallelism explained: why they differ, how threads and async work, and how to reason about race conditions, deadlocks, and synchronization.

Fundamentals of Software Systems Integration


Diagram showing integration patterns connecting multiple systems through APIs, message queues, and data pipelines.

Software systems integration fundamentals: strategies, patterns, and trade-offs for connecting systems that need to work together.

Fundamentals of JavaScript


Diagram of JavaScript fundamentals: types, closures, prototypes, and the event loop.

Why JavaScript works the way it does: dynamic typing, prototypes, closures, and the event loop. Concepts behind the design and when it fits.

Fundamentals of Rust


Diagram of Rust fundamentals: ownership, borrowing, traits, and safety.

Why Rust exists: memory safety without garbage collection, ownership, and fearless concurrency. Learn the concepts behind Rust's design and when it fits.

Fundamentals of FinOps


Diagram of FinOps lifecycle: Inform, Optimize, Operate, and core domains.

Why FinOps exists and how it works: visibility, accountability, and the Inform-Optimize-Operate lifecycle. Learn the concepts behind cloud financial operations.

Fundamentals of Azure


Diagram of Azure global infrastructure: regions, availability zones, and core services.

Why Azure works the way it does: regions, Entra ID, resource groups, and core services. Learn the concepts that shape Microsoft cloud decisions.

Fundamentals of AWS


Diagram of AWS global infrastructure: regions, availability zones, and core services.

Why AWS works the way it does: regions, IAM, shared responsibility, and core services. Learn the concepts that shape cloud decisions.

A Software Fundamentals Glossary


A Software Fundamentals Glossary

Glossary of terms for software fundamentals (maintainability, design, naming, and related topics).

Fundamentals of Maintainability


Maintainability dimensions: structural complexity, understandability, technical debt, coupling, and code smells.

Why software maintainability matters: structural complexity, understandability, technical debt, coupling, and code smells. Learn the principles that keep code changeable over time.

Fundamental Skills


Fitness review skills turn fundamentals into repeatable, scored code reviews across architecture, security, reliability, and more.

Fitness review skills turn fundamentals into repeatable, scored code reviews across architecture, security, reliability, and more.

Fundamentals of Graph Databases


Diagram showing nodes connected by edges representing the graph database model.

Why graph databases exist, when to use them, and how they differ from relational databases. Learn nodes, edges, and relationship-first querying.

Fundamentals of Timeouts


Timeout fundamentals for software: why timeouts exist, connection vs read vs write, choosing values, and avoiding cascading failures in distributed systems.

Timeout fundamentals for software: why timeouts exist, connection vs read vs write, choosing values, and avoiding cascading failures in distributed systems.

Logical Fallacies in Software Development


Logical fallacies like sunk cost, false dichotomy, and confirmation bias derail software projects. Learn to recognize and avoid faulty reasoning traps.

Logical fallacies like sunk cost, false dichotomy, and confirmation bias derail software projects. Learn to recognize and avoid faulty reasoning traps.

Fundamentals of Centralized Software Systems


Conceptual diagram showing centralized system architecture with single control point, unified data store, and coordinated processing.

Understanding centralized software systems: when single points of control work, why they're simpler than distributed systems, and when to choose them over distributed alternatives.