TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Slow deployment causes meetings (2015)

188 pointsby fagnerbrack5 months ago

13 comments

sourceless5 months ago
I think unfortunately the conclusion here is a bit backwards; de-risking deployments by improving testing and organisational properties is important, but is not the only approach that works.<p>The author notes that there appears to be a fixed number of changes per deployment and that it is hard to increase - I think the &#x27;Reversie Thinkie&#x27; here (as the author puts it) is actually to decrease the number of changes per deployment.<p>The reason those meetings exist is because of risk! The more changes in a deployment, the higher the risk that one of them is going to introduce a bug or operational issue. By deploying small changes often, you get deliver value much sooner and fail smaller.<p>Combine this with techniques such as canarying and gradual rollout, and you enter a world where deployments are no longer flipping a switch and either breaking or not breaking - you get to turn outages into degradations.<p>This approach is corroborated by the DORA research[0], and covered well in Accelerate[1]. It also features centrally in The Phoenix Project[2] and its spiritual ancestor, The Goal[3].<p>[0] <a href="https:&#x2F;&#x2F;dora.dev&#x2F;" rel="nofollow">https:&#x2F;&#x2F;dora.dev&#x2F;</a><p>[1] <a href="https:&#x2F;&#x2F;www.amazon.co.uk&#x2F;Accelerate-Software-Performing-Technology-Organizations&#x2F;dp&#x2F;1942788339" rel="nofollow">https:&#x2F;&#x2F;www.amazon.co.uk&#x2F;Accelerate-Software-Performing-Tech...</a><p>[2] <a href="https:&#x2F;&#x2F;www.amazon.co.uk&#x2F;Phoenix-Project-Helping-Business-Anniversary&#x2F;dp&#x2F;B00VBEBRK6" rel="nofollow">https:&#x2F;&#x2F;www.amazon.co.uk&#x2F;Phoenix-Project-Helping-Business-An...</a><p>[3] <a href="https:&#x2F;&#x2F;www.amazon.co.uk&#x2F;Goal-Process-Ongoing-Improvement&#x2F;dp&#x2F;0566086654" rel="nofollow">https:&#x2F;&#x2F;www.amazon.co.uk&#x2F;Goal-Process-Ongoing-Improvement&#x2F;dp...</a>
评论 #42485277 未加载
评论 #42485240 未加载
评论 #42487663 未加载
评论 #42485392 未加载
评论 #42485872 未加载
评论 #42485777 未加载
评论 #42488086 未加载
lifeisstillgood5 months ago
I am trying to expound a concept I call “software literacy” - where a business can be run via code just as much as today a company can be run by English words (policy documents, emails etc).<p>This leads to a few corollaries - things like “If GPUs do the work then coders are the new managers” or we need whole-org-test-rigs to be clear about the impacts of chnages.<p>This seems directly related to this excellent article - to my mind if all the decision makers are not looking at the code as the first class object in a chnage process (is opposed to Jiras or project plans) then not all decision makers are (software) literate - and this comes up a lot in the threads here (“how do I discuss with non-technical management”) - the answer is you cannot - that management must be changed. This is an enormous generational road block that I thought was a problem thirty years ago but naively assumed would disappear as coders grew up. Of course the problem is that to “run” a company one does not need to code - so until not coding is something embarrassing like not writing is for a newspaper editor we won’t get past it.<p>The main point is that we need companies that can be run with the new set of self-reinforcing concepts - sops, testing, not meetings but systems as communication.<p>I will try and rewrite this comment later - it needs work
评论 #42490497 未加载
评论 #42491716 未加载
andy_ppp5 months ago
The organisation will actively prevent you from trying to improve deployments though, they will say things like “Jenkins shouldn’t be near production” or “we can’t possibly put things live without QA being involved” or “we need this time to make sure the quality of the software is high enough”. All with a straight face while having millions of production bugs and a product that barely meets any user requirements (if there are any).<p>In the end fighting the bureaucracy is actually impossible in most organisations, especially if you’re not part of the 200 layers of management that create these meetings. I would sack everyone but programmers and maybe two designers and let everyone fight it out without any agile coaches and product owners and scrum master and product experts.<p>Slow deployment is a problem but it’s not <i>the</i> problem.
评论 #42487848 未加载
评论 #42488425 未加载
评论 #42489125 未加载
评论 #42488234 未加载
braza5 months ago
A marginally related point but I do not know if others faced the following situation: I worked in a place with a CI pipeline room ~25 minutes with the unit&#x2F;integration tests (3000+) taking 18 minutes.<p>When something happens in production we ended up placing more tests; and of course when things goes south at least 50 minutes were necessary to recover.<p>After a lot of consideration we decided to focus on the recovery and relax and simply some tests and focus on recovery (i.e. have the full thing in less than 5 minutes) combined with a canary as deployment strategy (instead rolling updates).<p>At least for us was a so refreshing experience but sounded wrong in some ways.
评论 #42488601 未加载
qaq5 months ago
A bit tangential but why is CloudFormation so slowww?
评论 #42484942 未加载
评论 #42484689 未加载
评论 #42485051 未加载
评论 #42485632 未加载
vegetablepotpie5 months ago
I have personal experience with this in my professional career. Before Christmas break I had a big change, and there was fear. My org responded by increasing testing (regression testing, which increased overhead). This increased the risk that changes on dev would break changes on my branch (not a code merging way, but in a <i>complex adaptive system</i> way).<p>I responded to this risk by making a meeting. I presented our project schedule, and told my colleagues about their <i>expectations</i>, I.e. if they drop code style comments on the PRs they will be deferred to a future PR (and then ignored and never done).<p>What we needed <i>is</i> fine grained testing with better isolation between components. The problem is is that our management is at a high level, they don’t see meetings as a means to an end, they see meetings as a worthy goal in and of itself self to achieve. More meetings means more collaboration, means good. I’d love to see advice on how to lead technical changes with non-technical management.
dang5 months ago
Related:<p><i>Slow Deployment Causes Meetings</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10622834">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10622834</a> - Nov 2015 (26 comments)
lizzas5 months ago
Microservices lets you horizontally scale deployment frequency too.
评论 #42484898 未加载
评论 #42484917 未加载
评论 #42484612 未加载
评论 #42484931 未加载
评论 #42485086 未加载
austin-cheney5 months ago
While this is mostly correct it’s also just as irrelevant.<p>TLDR; software performance, thus human performance, is all that matters.<p>Risk management&#x2F;acceptance can be measured with numbers. In software this is actually far more straightforward than in many other careers, because software engineers can only accept risk within the restrictions of their known operating constraints and everything else is deferred.<p>If you want to go faster you need to maximize the frequency of human iteration above absolutely everything else. If a person cannot iterate, such as waiting on permissions, they are blocked. If they are waiting on a build or screen refresh they are slowed. This can also be measured with numbers.<p>If person A can iterate 100x faster than person B correctness becomes irrelevant. Person B must maximize upon correctness because they are slow. To be faster and more correct person A has extreme flexibility to learn, fail, and improve beyond what person B can deliver.<p>Part of iterating faster AND reducing risk is fast test automation. If person A can execute 90+% test coverage in time of 4 human iterations then that test automation is still 25x faster than one person B iteration with a 90+% lower risk of regression.
jojobas5 months ago
Fast deployment causes incident war rooms.
评论 #42487949 未加载
评论 #42488677 未加载
评论 #42486503 未加载
评论 #42485262 未加载
评论 #42489115 未加载
yarg5 months ago
I had a boss who actually acknowledged that he was deliberately holding up my development process - this was a man who refused to allow me a four day working week.
tpoacher5 months ago
Meetings (used right) are a great tool, in the same sense that project planners (used right) are a great tool.<p>But then there&#x27;s Jira.<p>&#x2F;s
Sparkyte5 months ago
Sounds like a process problem. 2024 development cycles should be able to handle multiple lanes of development and deployments. Also why things moved to microservices so you can deploy with minimal impact as long as you don&#x27;t tightly couple your dependencies.
评论 #42484496 未加载