- Continuous Integration and Delivery Illustrated — worth many thousands of words.
- Thousand Robot Swarm Self-Assembles into Arbitrary Shapes — you won’t sleep. If they only chittered, it would be perfect.
- How to Architect with a Design for Failure Approach (Cloud Academy) — “design for failure” is what the rest of us call “design for the real world.”
Guidelines to maximize, allocate, and use resources strategically
Step one: Build your case
Before you can instill a culture of performance, you first need to demonstrate the value of strong web performance to your colleagues and superiors. To do that, you must build a case based on business standards that everyone can relate to, specifically by demonstrating the clear link between web performance and revenue. Calculate how much revenue you would lose if your site was down for hours, or even minutes. Ask how much time IT spends fixing problems when they could be working on other issues. Figure out what your competitors’ web performance is like and how yours compares (if it’s better, you have to keep up; if it’s worse, it’s an opportunity to take advantage of their weakness).
If all companies are software companies, then all companies must learn to manage their online operations.
Two years ago, I wrote What is DevOps. Although that article was good for its time, our understanding of organizational behavior, and its relationship to the operation of complex systems, has grown.
A few themes have become apparent in the two years since that last article. They were latent in that article, I think, but now we’re in a position to call them out explicitly. It’s always easy to think of DevOps (or of any software industry paradigm) in terms of the tools you use; in particular, it’s very easy to think that if you use Chef or Puppet for automated configuration, Jenkins for continuous integration, and some cloud provider for on-demand server power, that you’re doing DevOps. But DevOps isn’t about tools; it’s about culture, and it extends far beyond the cubicles of developers and operators. As Jeff Sussna says in Empathy: The Essence of DevOps:
…it’s not about making developers and sysadmins report to the same VP. It’s not about automating all your configuration procedures. It’s not about tipping up a Jenkins server, or running your applications in the cloud, or releasing your code on Github. It’s not even about letting your developers deploy their code to a PaaS. The true essence of DevOps is empathy.