Sometimes lipstick is exactly what a pig needs
Watch talk on YouTubeBy VMware (of all people) - kinda funny that they chose this title with the whole Broadcom fun. The main topic of this talk is: What interface do we choose for what capability.
Personas
- Experts: Kubernetes, DB engineer
- Users: Employees that just want to do stuff
- Platform engineers: Connect Users to Services by Experts
Goal
- Create Interfaces: Connect Users to Services
- Problem: Many types of Interfaces (SaaS, GUI, CLI) with different capabilities
Dimensions
These are the dimensions of interface design proposed in the talk
- Autonomy: external dependency (low) <-> self-service (high)
- low: Ticket system -> But sometimes good for getting an expert
- high: Portal -> Nice, but sometimes we just need a human contact
- Contextual distance: stay in the same tool (low) <-> switch tools (high)
- low: IDE plugin -> High potential friction if stuff goes wrong/complex (context switch needed)
- high: Wiki or ticketing system
- Capability skill: anyone can do it (low) <-> Made for experts (high)
- low: transparent sidecar (e.g. vulnerability scanner)
- high: CLI
- Interface skill: anyone can do it (low) <-> needs specialized interface skills (high)
- low: Documentation in web aka wiki-style
- high: Code templates (a sample helm values.yaml or raw terraform provider)
Recap
- You can use multiple interfaces for one capability
- APIs (proverbial pig) are the most important interface b/c it can provide the baseline for all other interfaces
- The beautification (lipstick) of the API through other interfaces makes users happy