https://www.middle-engine.com/ https://www.middle-engine.com/blog https://www.middle-engine.com/blog/posts/2022/08/30/quick-tip-regarding-testing-components-that-use-jotai-atom-with-hash https://www.middle-engine.com/blog/posts/2022/06/07/useful-flowcharts-when-integrating-auth0-in-an-spa https://www.middle-engine.com/blog/posts/2022/06/06/avoid-scrum-if-you-are-a-startup https://www.middle-engine.com/blog/posts/2021/12/30/recreating-the-d3-axis-component-in-react https://www.middle-engine.com/blog/posts/2021/12/20/performance-issues-with-the-prop-getters-pattern-in-react https://www.middle-engine.com/blog/posts/2021/12/20/choosing-a-node-js-package-manager https://www.middle-engine.com/blog/posts/2021/10/20/web-design-as-a-collaboration-between-designer-and-developer https://www.middle-engine.com/blog/posts/2020/08/23/a-performance-testing-gotcha-with-the-canvas-web-api https://www.middle-engine.com/blog/posts/2020/08/22/layered-canvas-rendering-issues-in-web-workers https://www.middle-engine.com/blog/posts/2020/08/21/cpu-versus-gpu-with-the-canvas-web-api https://www.middle-engine.com/blog/posts/2020/07/28/bresenhams-line-algorithm https://www.middle-engine.com/blog/posts/2020/06/23/programming-the-nes-the-6502-in-detail https://www.middle-engine.com/blog/posts/2020/06/22/programming-the-nes-the-nes-in-overview https://www.middle-engine.com/blog/posts/2020/04/25/rebasing-with-git-rebase-onto https://www.middle-engine.com/blog/posts/2020/04/22/useful-css-features https://www.middle-engine.com/blog/posts/2020/04/21/practical-advice-for-code-reviews https://www.middle-engine.com/blog/posts/2019/11/10/tips-for-using-styled-components https://www.middle-engine.com/blog/posts/2019/10/27/visually-hiding-content-in-react https://www.middle-engine.com/blog/posts/2019/10/12/imperative-updates-in-react https://www.middle-engine.com/blog/posts/2019/10/12/managing-dependencies-in-react-js-apps https://www.middle-engine.com/blog/posts/2018/12/22/fragile-patterns-in-react-lifecycle-methods https://www.middle-engine.com/blog/posts/2018/12/21/a-react-development-flow https://www.middle-engine.com/blog/posts/2018/12/21/symmetry-in-the-naming-of-event-handler-props https://www.middle-engine.com/blog/posts/2018/11/29/a-short-history-of-function-components-in-react https://www.middle-engine.com/blog/posts/2018/08/23/value-added-front-ends https://www.middle-engine.com/blog/posts/2018/08/22/a-modular-way-to-organize-your-reactjs-code https://www.middle-engine.com/blog/posts/2018/08/21/extending-the-single-responsibility-principle https://www.middle-engine.com/blog/posts/2018/08/19/adding-visual-regression-testing-to-a-react-app https://www.middle-engine.com/blog/posts/2018/05/09/a-game-of-snakes-and-ladders https://www.middle-engine.com/blog/posts/2018/05/08/what-makes-a-good-developer https://www.middle-engine.com/blog/posts/2017/03/22/using-phantomjs-with-aws-lambda https://www.middle-engine.com/blog/posts/2015/08/04/installing-ssl-certificates-in-aws https://www.middle-engine.com/blog/posts/2015/07/22/blue-green-deployment-in-aws