[{"data":1,"prerenderedAt":66},["ShallowReactive",2],{"post-\u002Fblog\u002Fshipping-is-part-of-building":3},{"id":4,"title":5,"body":6,"date":51,"description":52,"extension":53,"featured":54,"image":55,"meta":56,"navigation":57,"path":58,"readingTime":46,"seo":59,"stem":60,"tags":61,"updated":64,"__hash__":65},"blog\u002Fblog\u002Fshipping-is-part-of-building.md","Shipping is part of building",{"type":7,"value":8,"toc":44},"minimark",[9,13,18,21,24,28,31,34,38,41],[10,11,12],"p",{},"A feature is not finished when it works on a laptop. It needs a repeatable way to reach users and a clear way to recover when something goes wrong.",[14,15,17],"h2",{"id":16},"shorten-the-path-to-production","Shorten the path to production",[10,19,20],{},"Start with a small deployment pipeline. Build the application, run the checks that matter, and produce an artifact you can deploy consistently.",[10,22,23],{},"Keep environment-specific configuration outside the application code. Document required variables and provide safe examples without credentials.",[14,25,27],{"id":26},"make-the-system-observable","Make the system observable",[10,29,30],{},"Decide what you need to know before an incident happens. Useful signals include failed requests, slow operations, and whether a background task completed.",[10,32,33],{},"Logs should help answer a question. Avoid recording sensitive request bodies simply because they are available.",[14,35,37],{"id":36},"practice-recovery","Practice recovery",[10,39,40],{},"A rollback plan is more valuable when you have tried it. Know which changes are reversible and which need a forward fix, especially when a release changes stored data.",[10,42,43],{},"Reliable delivery is a habit built through small, repeatable steps.",{"title":45,"searchDepth":46,"depth":46,"links":47},"",2,[48,49,50],{"id":16,"depth":46,"text":17},{"id":26,"depth":46,"text":27},{"id":36,"depth":46,"text":37},"2026-09-10","Bring deployment, observability, and recovery into the development loop from the beginning.","md",false,"\u002Fsocial-card.png",{},true,"\u002Fblog\u002Fshipping-is-part-of-building",{"title":5,"description":52},"blog\u002Fshipping-is-part-of-building",[62,63],"DevOps","Full-stack",null,"EhDns5ttyhKfL-iIASOX9hbMzoKQmv2E5u5xPkdmgMw",1789824594653]