Port
The numeric endpoint a network service listens on, and a scarce shared resource on a developer machine.
A port is a sixteen-bit number identifying an endpoint on a host. A server binds one and listens; a client connects to it. Only one process can hold a given port on a given interface at a time.
On a machine running several projects, ports become a genuinely contended resource, and the resulting failures are among the most disorienting in development.
Wrong-port binding. A start command that reads its port from the shell, with a fallback, will bind the fallback when the shell does not provide one — even if a local configuration file says otherwise, because the shell expanded the value before the program read its configuration. See Shell.
Cross-talk. When two working copies are in flight, whoever already has a browser open on the shared port starts talking to the other branch's code, and their writes land in that branch's database. Traffic appearing in a log that you did not generate is the tell, and nothing in that log is trustworthy until the binding is checked.
Derived collisions. Ports generated from a project name by hashing are not collision-free, and the resulting bind failure is reported by whichever process starts second.
Confirming which process holds a port — and what directory it is running from — takes one command and settles all three.
See also5
Hand-picked in the note itself — the neighbours worth reading next.
Process
A running program with its own memory, environment, and identity.
Systems & Tooling10 connections
Git Worktree
An additional working directory attached to one repository, each on its own branch.
Version Control & Delivery10 connections
Containerization
Packaging an application with its dependencies into an isolated, reproducible runtime unit.
Systems & Tooling10 connections
Same-Origin Policy
The browser rule isolating documents by scheme, host, and port, and the mechanisms for relaxing it.
Web Platform4 connections
Domain Name System
The distributed directory translating names to addresses, and the layer where propagation delays live.
Systems & Tooling4 connections
Related2
Nearby in the graph rather than deliberately chosen. Looser, sometimes surprising.
Linked from7
Notes elsewhere in the wiki that reach for this one.
- ContainerizationSystems & Tooling
Packaging an application with its dependencies into an isolated, reproducible runtime unit.
- Domain Name SystemSystems & Tooling
The distributed directory translating names to addresses, and the layer where propagation delays live.
- Git WorktreeVersion Control & Delivery
An additional working directory attached to one repository, each on its own branch.
- Multi-TenancyData & Content
One deployment serving many isolated customers, with tenancy threaded through data, routing, and access.
- ProcessSystems & Tooling
A running program with its own memory, environment, and identity.
- Same-Origin PolicyWeb Platform
The browser rule isolating documents by scheme, host, and port, and the mechanisms for relaxing it.
- ShellSystems & Tooling
The interactive command interpreter, and a programming language with unusually sharp edges.