{"componentChunkName":"component---src-templates-tag-template-js","path":"/tag/code","result":{"data":{"site":{"siteMetadata":{"title":"Blog by Jon Mellman","subtitle":"Posts by Seattle-based software developer, musician, and occasional blogger."}},"allMarkdownRemark":{"edges":[{"node":{"fields":{"slug":"/posts/typescript-for-api-contracts","categorySlug":"/category/tech/"},"frontmatter":{"title":"Advanced TypeScript Patterns: API Contracts","date":"2022-08-22T00:58:42.270Z","category":"Tech","description":"Using TypeScript to eliminate a class of bugs by guaranteeing compatibility between your API client and server."}}},{"node":{"fields":{"slug":"/posts/promise-memoization","categorySlug":"/category/tech/"},"frontmatter":{"title":"Advanced Promise Patterns: Promise Memoization","date":"2021-01-11T05:05:00.351Z","category":"Tech","description":"Memoizing async methods to simplify caching and avoid common race conditions."}}},{"node":{"fields":{"slug":"/posts/flakiness-one-liner","categorySlug":"/category/tech/"},"frontmatter":{"title":"Measuring Test Flakiness with a Bash One-Liner","date":"2021-01-07T03:34:08.453Z","category":"Tech","description":"How do you know that you've really fixed the flakiness? How about some cold hard data."}}},{"node":{"fields":{"slug":"/posts/singleton-promises","categorySlug":"/category/tech/"},"frontmatter":{"title":"Advanced Async Patterns: Singleton Promises","date":"2021-01-02T00:52:49.916Z","category":"Tech","description":"Demonstrating a common concurrency race condition and fixing it using a Singleton Promise."}}},{"node":{"fields":{"slug":"/posts/on-opportunistic-refactoring","categorySlug":"/category/tech/"},"frontmatter":{"title":"On Opportunistic Refactoring","date":"2020-06-28T09:47:36.623Z","category":"Tech","description":"A useful piece of vocabulary for any software engineer. Commentary on the value of continuous and easy software refactors."}}}]}},"pageContext":{"tag":"Code","currentPage":0,"postsLimit":5,"postsOffset":0,"prevPagePath":"/tag/code","nextPagePath":"/tag/code/page/1","hasPrevPage":false,"hasNextPage":true}},"staticQueryHashes":["251939775","401334301","4025097228"]}