2 ms·
Can you elaborate on modern best practices?
by bvrmn 6y ago
Can you elaborate on modern best practices?
- 0xbadcafebee 6y agoKind of hard to cover it all, as it's sort of spread across many subjects, some of it is specific to a technology and some is more general. We really need a Wiki for it all. I tried to start one but it proved difficult to find other people who were interested. Here's some of the content: https://github.com/peterwwillis/devopsyoga-content/ https://github.com/peterwwillis/devopsyoga-content/ This DevOps word soup will help point you towards good practices: Infrastructure as Code. Immutable Infrastructure. Continuous Integration. Continuous Delivery. Test Driven Development. Blue/Green and Canary deployments. Cattle not Pets. Dead Cat syndrome. Not Invented Here syndrome. The Three Ways (Systems Thinking, Amplifying Feedback Loops, Continuous Learning and Experimentation). The Four Areas (Extend Delivery to Production, Extend Operation to Project, Embed Project(Dev) into Operations, Embed Production(Ops) into Project). CALMS. Andon cords. Autonomation. Value Stream Mapping. Shift Left. The Twelve-Factor App. Performance & Stress Testing. Quality Gates. Chaos Engineering. Idempotent & Atomic Deployments. Service Mesh. Distributed Tracing. Ephemeral credentials & secrets management. Then again, a lot of best practices have no buzzword. I don't know if "Simplified Engineering" has its own buzzword, but that's a best practice: use the least complex solution that meets your product's needs and also ensures other best practices. A Kubernetes cluster that isn't well managed may be much worse for security & reliability than running an app in a Docker container on a single pre-baked VPS. Static websites are more reliable than dynamic ones. And a static website served via S3 static site hosting is even more reliable [assuming it's not in us-east-1!].