Software should be easy to use. It should also try to stop you from hitting yourself. A lot of modern successful software has easy to use defaults which makes getting started really simple. The problem is that the “getting started experience” often turns into “production” before the users or application are really ready for it. This talk covers the common mistakes that users run into when going into production with Kubernetes and proposes a potential solution for how we can prevent this from happening in the future. I will be covering resource limits/quotas, pod disruption budgets, affinity, upgrade strategies, readinessprobes, logging, monitoring and explain why you absolutely need them for any application before you can consider it truly production ready. I will also talk about why I believe software is like this and what I think we can do to make life better for everyone.