41554 blogs · [ { "id": "01a087a1-4762-70f4-87f3-c0d59ca6d7d8", "title": "Expressive components in vanilla React, part 2: IO objects", "url": "https://massimilianomirra.com/notes/expressive-components-in-vanilla-react-part-2-io-objects/", "published_at": "2024-10-03T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d59d46a9dd", "title": "Expressive components in vanilla React, part 1: TypeStates", "url": "https://massimilianomirra.com/notes/expressive-components-in-vanilla-react-part-1-type-states/", "published_at": "2024-09-09T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d59ddcdfd7", "title": "Faster, simpler tests with explicit IO channels", "url": "https://massimilianomirra.com/notes/faster-simpler-tests-with-explicit-input-output-channels/", "published_at": "2024-09-04T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d59e3cdbcd", "title": "The process.env frontend time bomb (plus: a sustainable definition of “fixed”)", "url": "https://massimilianomirra.com/notes/the-frontend-process-env-time-bomb-plus-a-sustainable-definition-of-fixed/", "published_at": "2024-04-10T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d59e5e7af7", "title": "Test-driven development of NextJS API routes", "url": "https://massimilianomirra.com/notes/test-driven-development-of-nextjs-api-routes/", "published_at": "2023-01-18T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d59ecc7556", "title": "How two lines of TypeScript can make a bug go from “undetected in production” to “impossible to introduce”", "url": "https://massimilianomirra.com/notes/how-two-lines-of-typescript-can-make-a-bug-can-go-from-undetected-in-production-to-impossible-to-introduce/", "published_at": "2022-11-18T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d59f40bc4b", "title": "“I never did any formal design, where can I start?”", "url": "https://massimilianomirra.com/notes/cafe-tech-chat-i-never-did-any-formal-design-how-do-i-start/", "published_at": "2022-11-06T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a039d2e9", "title": "Emacs package quickstart with Eldev", "url": "https://massimilianomirra.com/notes/emacs-package-quickstart-with-eldev/", "published_at": "2022-11-05T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a109df02", "title": "“I’ve got a React codebase, I want to introduce tests, where do I start?”", "url": "https://massimilianomirra.com/notes/cafe-tech-chat-i-ve-got-a-react-codebase-i-want-to-introduce-tests-where-do-i-start/", "published_at": "2022-10-23T00:00:02+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a1700860", "title": "TDD and (vs?) testing", "url": "https://massimilianomirra.com/notes/cafe-tech-chat-tdd-and-vs-testing/", "published_at": "2022-10-23T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a24ef8fe", "title": "Four patterns for developer-friendly, production-grade NodeJS services", "url": "https://massimilianomirra.com/notes/four-patterns-for-developer-friendly-production-grade-nodejs-services/", "published_at": "2022-06-16T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a2bf8137", "title": "Comment the code that is not there", "url": "https://massimilianomirra.com/notes/comment-the-code-that-is-not-there/", "published_at": "2022-03-03T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a3b16bff", "title": "Mocking window.ethereum in Playwright for end-to-end dApp testing", "url": "https://massimilianomirra.com/notes/mocking-window-ethereum-in-playwright-for-end-to-end-dapp-testing/", "published_at": "2022-02-27T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a4537df6", "title": "[draft] Structuring projects to guide and inform (for React applications)", "url": "https://massimilianomirra.com/notes/structuring-a-project-to-guide-and-inform-for-react-applications/", "published_at": "2021-06-25T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a50a5333", "title": "Bi-dimensional commit messages", "url": "https://massimilianomirra.com/notes/bi-dimensional-commit-messages/", "published_at": "2021-04-13T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a5931aca", "title": "Faster interactive development in Storybook", "url": "https://massimilianomirra.com/notes/speed-up-interactive-development-in-storybook/", "published_at": "2021-04-08T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a5e51491", "title": "Data that grows together, goes together", "url": "https://massimilianomirra.com/notes/data-that-grows-together-go-together/", "published_at": "2021-04-07T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a60e6e30", "title": "Lightweight external command integration in Emacs via compilation mode", "url": "https://massimilianomirra.com/notes/lightweight-external-command-integration-in-emacs-via-compilation-mode/", "published_at": "2020-12-31T00:00:00+00:00" }, { "id": "01a087a1-4762-70f4-87f3-c0d5a6496ae3", "title": "The dangers of greedy functions", "url": "https://massimilianomirra.com/notes/the-dangers-of-greedy-functions/", "published_at": "2020-12-25T00:00:00+00:00" } ] posts Claim your blog
Back to massimilianomirra.com
Blog · corpus.blog/blogs/massimilianomirra.com/posts

massimilianomirra.com

massimilianomirra.com

2024

2023

2022

2021

2020