{"id":4959,"date":"2018-09-14T16:31:39","date_gmt":"2018-09-14T16:31:39","guid":{"rendered":"http:\/\/redmonk.com\/jgovernor\/?p=4959"},"modified":"2018-09-14T16:33:37","modified_gmt":"2018-09-14T16:33:37","slug":"the-quickening-a-keynote-about-software-development-velocity-at-new-relics-futurestack-2018-conference","status":"publish","type":"post","link":"https:\/\/redmonk.com\/jgovernor\/the-quickening-a-keynote-about-software-development-velocity-at-new-relics-futurestack-2018-conference\/","title":{"rendered":"The Quickening: a keynote about software development velocity at New Relic&#8217;s Futurestack 2018 Conference"},"content":{"rendered":"<p><a href=\"http:\/\/jgovernor-media.redmonk.com\/jgovernor\/files\/2018\/09\/rafe-rides.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4960\" src=\"http:\/\/jgovernor-media.redmonk.com\/jgovernor\/files\/2018\/09\/rafe-rides.gif\" alt=\"\" width=\"651\" height=\"488\" \/><\/a><\/p>\n<p>This week I gave a keynote at New Relic&#8217;s FutureStack conference in SF.<\/p>\n<p>Isaac Eldridge did a great write up here &#8211;\u00a0<a href=\"https:\/\/blog.newrelic.com\/product-news\/futurestack18-james-governor-modern-software\/\">10 Thoughts on Modern Software from RedMonk\u2019s James Governor<\/a>. You really need to read his post.<\/p>\n<p>Here is my own summary though:<\/p>\n<p>Everything is accelerating in business, and the stakes are higher than ever. Economies are becoming more winner takes all. Which brings us to Highlander quote: \u201cThere can be only one\u201d.<\/p>\n<p>RedMonk\u00a0calls practitioners the New Kingmakers. The companies that are succeeding are investing in building and rebuilding their engineering competence. The underlying factors driving the rise of the New Kingmakers are social coding and online learning, open source and the cloud. See my colleague&#8217;s <a href=\"https:\/\/try.newrelic.com\/rs\/newrelic\/images\/The_New_Kingmakers.pdf\">excellent book<\/a> for more about this revolution.\u00a0 One effect of the New Kingmakers&#8217; trend is that access to developer talent is now considered more of a constraint than access capital &#8211; according to a recent poll of 1000 C-suite executives by Harris, sponsored by Stripe, called <a href=\"https:\/\/stripe.com\/reports\/developer-coefficient-2018\">The Developer Coefficient<\/a>.\u00a0We are told we all need to become software companies, but it\u2019s hard to be a software company. Data and services are what people want to pay for \u2013 this is <a href=\"https:\/\/www.amazon.co.uk\/Software-Paradox-Rise-Commercial-Market\/dp\/1491900938\">The Software Paradox<\/a>. The value today is not in the code, but rather in moats based on services and data.<\/p>\n<p>Some companies are just moving so much faster than others. It\u2019s almost comical. CI\/CD is the on-ramp for everything good in modern software development. Better quality software, built faster. CI\/CD drove the rise of Docker \u2013 the disposable infrastructure approach mapped really well to automated testing (unit, functional\u00a0etc). But Kubernetes emerged as the orchestration environment of choice. Ops people bought into the model, and now it\u2019s the\u00a0defacto\u00a0standard for all container-based workloads. All the major players have adopted it, including IBM, Mesosphere, Pivotal, Rancher, Red Hat, VMware. And of course Docker itself. See this post about Rancher: <a href=\"https:\/\/redmonk.com\/jgovernor\/2018\/06\/28\/rancher-labs-treating-cattle-like-cattle\/\">Treating Cattle like Cattle<\/a> for more about convergence around Kubernetes.<\/p>\n<p>We\u2019re seeing the entire stack being rewritten and rebuilt on top of K8s, including everything from networking to storage. Unlike OpenStack, K8s didn\u2019t begin with this relayering of the stack as a goal, but it\u2019s happening. The next big thing, on top of K8s is likely to be service mesh, automating configuration, security, policy\u00a0etc\u00a0\u2013 allowing for\u00a0sidecarring\u00a0and routing.<\/p>\n<p>The industry however hasn&#8217;t been doing a great deal of discussing Istio use cases. It seems to me that one is canarying (selective deployment before broader rollouts). Also see blue\/green deployments (maintaining duplicate infrastructure, cutting over traffic from one to the other as new services bed in. Calling these approaches just &#8220;CI\/CD&#8221; perhaps doesn\u2019t go far enough &#8220;<a href=\"https:\/\/redmonk.com\/jgovernor\/2018\/08\/06\/towards-progressive-delivery\/\"><span class=\"il\">Progressive<\/span>\u00a0<\/a><span class=\"il\"><a href=\"https:\/\/redmonk.com\/jgovernor\/2018\/08\/06\/towards-progressive-delivery\/\">Delivery<\/a>&#8220;<\/span>\u00a0is what I call this basket of routing-based approaches for deployment toolchains, with feature flags, canarying etc. taking full advantage of container native cloud infrastructures.<\/p>\n<p>Related &#8211; so what about how developers work \u2013 why not do everything through Github, with Git maintaining state in a declarative infrastructure, managing deployment by K8s? The Pull Request is the unit of work and collaboration. Weaveworks came up with the term &#8220;<a href=\"https:\/\/www.weave.works\/blog\/gitops-operations-by-pull-request\">GitOps<\/a>&#8221; to describe this pattern.<\/p>\n<p>Even with ever more automated testing, we&#8217;re still going to have failures, requiring debugging in production. Today we develop software with an expectation of failure. So how we deal with issues? If we have a desired state, we also need deep insights into the actual state. This is control systems 101. The term being used in the industry at the moment is\u00a0Observability, which goes beyond monitoring and traditional APM. It\u2019s tracing, logging and monitoring across huge event data sets, with real time query. There is a a clear shift of perspective \u2013 a developer writes code for it to be understood. This responsibility is as anything in the testing tool chain. Follow\u00a0@jbd,\u00a0@copyconstruct and\u00a0@mipsytipsy to learn more about O11y\u00a0 &#8211; they are all doing amazing work in the space.<\/p>\n<p>So with Progressive Delivery, Observability and GiTops style work we also need more flexible automation than ever, with better, richer, managed APIs.\u00a0Automation as code- everything needs to be programmable.<\/p>\n<p>All of this stuff can be rather complex though &#8211; Kubernetes is not for everyone, so AWS Lambda is for the &#8220;laggards&#8221;. Which has driven serverless approaches. With Lambda there is no need to think about all the K8s stuff in building stateless apps. It\u2019s 12 factor by default and design, totally opinionated. <a href=\"https:\/\/redmonk.com\/jgovernor\/2018\/03\/23\/aws-lambda-driven-by-the-laggards\/\">Lambda is driven by the laggards<\/a>. Serverless goes further than AWS Lambdas however, with event triggers across different infrastructures, clouds and services, for example through the new Cloud Events spec.<\/p>\n<p>Thinking about hosted managed services which abstract away infrastructure, and supre clean APIs brings us neatly to Stripe \u2013 which has rewritten the rules in terms of service\u00a0consumability.<\/p>\n<p>Which took me to some enterprise customer stories.<\/p>\n<p>Auto Trader UK <a href=\"https:\/\/redmonk.com\/jgovernor\/2018\/08\/03\/accelerating-the-digital-transformation-at-auto-trader-uk-rethinking-vendor-selection-processes-a-win-for-stripe\/\">rethought its RFP processes in adopting Stripe<\/a>, based on the ability to build quickly, enabling the New Kingmakers to be more effective.<\/p>\n<p>Target has invested heavily in people, from 30\/70 internal\/consultants to 80\/20 internal\/external, hiring 1000 people in 3 years, with modern open source-savvy skills. Target is also now training third parties in its dojo. The best way to learn is to teach after all. Target is K8s native \u2013 every store will run Kubernetes.<\/p>\n<p>Allstate created\u00a0Kompozed\u00a0labs, a facility teaching agile, improving how it builds software.<\/p>\n<p>eBay is now going all in on K8s, being more explicit about the new basket of container native technologies and open source contributions<\/p>\n<p>It\u2019s not all good news on the enterprise side of course. I pointed to an absolutely brutal takedown of BA in the FT for not investing in software development. This was the first big breach of the GDPR era, and this story is merciless.<\/p>\n<p>Organisations need to jump on the bike and learn the new approaches &#8211; go from balance bikes to bikes without the training wheel stage.\u00a0 Not everyone will make it &#8211; change agents, persuadables and heel diggers (you may need to lay off the heel diggers, not everyone will be ready to learn new skills for the new era)<\/p>\n<p>Concluding &#8211;<\/p>\n<ul>\n<li>Create path finding teams<\/li>\n<li>Make open source contributions<\/li>\n<li>Container Native is where the puck is going<\/li>\n<li>GitOps<\/li>\n<li>Observability<\/li>\n<li>Make Operations and Responsibility pervasive<\/li>\n<li>Refactor for services<\/li>\n<li>Break down large teams into small teams, loosely joined<\/li>\n<li>Reshoring is a thing. Close to the Business. Close to the User<\/li>\n<li>Rebuild engineering culture and competence<\/li>\n<li>Rethink procurement<\/li>\n<li>Invest in people and training (but not everyone will make it)<\/li>\n<\/ul>\n<p>Here are my slides<\/p>\n<p><iframe loading=\"lazy\" title=\"The Quickening at Futurestack 2018\" src=\"https:\/\/www.slideshare.net\/slideshow\/embed_code\/key\/BRESr4CzRDVx5Z\" width=\"427\" height=\"356\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" style=\"border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;\" allowfullscreen> <\/iframe> <\/p>\n<div style=\"margin-bottom:5px\"> <strong> <a href=\"https:\/\/www.slideshare.net\/monkchips\/the-quickening-at-futurestack-2018\" title=\"The Quickening at Futurestack 2018\" target=\"_blank\">The Quickening at Futurestack 2018<\/a> <\/strong> from <strong><a href=\"https:\/\/www.slideshare.net\/monkchips\" target=\"_blank\">James Governor<\/a><\/strong> <\/div>\n<p>&nbsp;<\/p>\n<p>This was a paid engagement. New Relic also paid T&amp;E for me.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This week I gave a keynote at New Relic&#8217;s FutureStack conference in SF. Isaac Eldridge did a great write up here &#8211;\u00a010 Thoughts on Modern Software from RedMonk\u2019s James Governor. You really need to read his post. Here is my own summary though: Everything is accelerating in business, and the stakes are higher than ever.<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[1],"tags":[455,133,464,459,549],"class_list":["post-4959","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-cicd","tag-devops","tag-kubernetes","tag-monitoring","tag-observability"],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9wfjh-1hZ","_links":{"self":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/posts\/4959","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/comments?post=4959"}],"version-history":[{"count":0,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/posts\/4959\/revisions"}],"wp:attachment":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/media?parent=4959"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/categories?post=4959"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/tags?post=4959"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}