by skunxicat

Infrastructure as Commodity

Why treating cloud services like utilities changes everything

The Electricity Analogy

You don’t think about electricity. You flip a switch, lights turn on. You don’t care about:

  • Power plant architecture
  • Grid topology
  • Voltage regulation
  • Load balancing

You care about: Does it work? What does it cost?

Cloud infrastructure should be the same.

The Current Problem

Instead of utilities, we got platforms:

  • Vendor-specific abstractions
  • Proprietary APIs
  • Framework lock-in
  • “Best practices” that serve vendors

The cloud became cloudy.

Commodity Thinking

Treat AWS services like utilities:

Lambda = Compute by the millisecond S3 = Storage by the byte
API Gateway = HTTP routing by the request

No magic. No abstraction. Just infrastructure primitives.

The Commodity Approach

Direct API Usage

# Not: serverless framework config
# But: direct AWS API calls
aws lambda create-function --function-name my-func

Standard Protocols

# Not: vendor SDKs
# But: HTTP, JSON, standard tools
curl -X POST https://api.aws.com/lambda/invoke

Portable Patterns

# Not: framework-specific deployment
# But: universal patterns
curl bootstrap | bash && ./tf apply

Why This Matters

1. Vendor Independence

Your skills transfer between clouds. HTTP is HTTP. JSON is JSON.

2. Cost Transparency

No hidden framework overhead. Pay for what you use, not what the framework needs.

3. Debugging Simplicity

When something breaks, you understand the actual infrastructure, not the abstraction.

4. Performance Control

Direct access to primitives means direct control over performance characteristics.

The Cloudless Implementation

Infrastructure modules that expose primitives:

  • terraform-aws-lambda-runtime → ECR + SSM
  • terraform-aws-rest-api → API Gateway + Usage Plans
  • terraform-aws-website → CloudFront + S3 + SSL

No frameworks. No abstractions. Just infrastructure.

When Commoditization Fails

  • Complex orchestration needs
  • Team lacks infrastructure knowledge
  • Rapid prototyping requirements
  • Vendor-specific features needed

The Network Effect

When infrastructure becomes commodity:

  • Tools become interchangeable
  • Skills become portable
  • Costs become predictable
  • Innovation focuses on problems, not plumbing

Historical Precedent

Before commodity electricity:

  • Every factory had its own power plant
  • Specialized knowledge required
  • High barriers to entry
  • Innovation focused on power generation

After commodity electricity:

  • Plug into the grid
  • Focus on your actual business
  • Lower barriers to entry
  • Innovation focused on products

We’re still in the “every factory has a power plant” phase of cloud computing.

The Transition

From platform thinking:

# serverless.yml
service: my-api
provider:
  name: aws
  runtime: nodejs18.x
functions:
  api:
    handler: index.handler

To commodity thinking:

# Direct infrastructure
aws lambda create-function \
  --function-name my-api \
  --code ImageUri=my-image \
  --role arn:aws:iam::account:role/lambda-role

The End State

Infrastructure that feels like:

  • Electricity (always available)
  • Water (metered usage)
  • Internet (standard protocols)

Not like:

  • Software platforms
  • Vendor ecosystems
  • Framework prisons

The cloud should be infrastructure, not ideology.