Essential steps to take before making any technical decision
https://thetshaped.dev/p/4-essential-steps-before-technical-decision
Oct 21 •

September 2025
Sep 17 •

Sep 9 •

August 2025
Aug 26 •

Aug 17 •

July 2025
Jul 13 •

June 2025
Jun 29 •

Jun 18 •

{
"by": "petar_ivanov",
"descendants": 1,
"id": 40246291,
"kids": [
40246292
],
"score": 3,
"time": 1714734223,
"title": "Essential steps to take before making any technical decision",
"type": "story",
"url": "https://thetshaped.dev/p/4-essential-steps-before-technical-decision"
}
{
"author": "Petar Ivanov",
"date": "2025-10-21T10:19:27.618Z",
"description": "A weekly newsletter sharing practical tips on React, Node, and Software Architecture. Elevate your Full-Stack JavaScript skills to the next level! Click to read The T-Shaped Dev, by Petar Ivanov, a Substack publication with tens of thousands of subscribers.",
"image": "https://substackcdn.com/image/fetch/$s_!MIkJ!,f_auto,q_auto:best,fl_progressive:steep/https%3A%2F%2Fpetarivanovv9.substack.com%2Ftwitter%2Fsubscribe-card.jpg%3Fv%3D411699885%26version%3D9",
"logo": null,
"publisher": "The T-Shaped Dev",
"title": "The T-Shaped Dev | Petar Ivanov | Substack",
"url": "https://thetshaped.dev/4-essential-steps-before-technical-decision"
}
{
"url": "https://thetshaped.dev/4-essential-steps-before-technical-decision",
"title": "The T-Shaped Dev | Petar Ivanov | Substack",
"description": "A weekly newsletter sharing practical tips on React, Node, and Software Architecture. Elevate your Full-Stack JavaScript skills to the next level! Click to read The T-Shaped Dev, by Petar Ivanov, a Substack publication with tens of thousands of subscribers.",
"links": [
"https://thetshaped.dev/4-essential-steps-before-technical-decision",
"https://thetshaped.dev/p/4-essential-steps-before-technical-decision"
],
"image": "https://substackcdn.com/image/fetch/$s_!MIkJ!,f_auto,q_auto:best,fl_progressive:steep/https%3A%2F%2Fpetarivanovv9.substack.com%2Ftwitter%2Fsubscribe-card.jpg%3Fv%3D411699885%26version%3D9",
"content": "<div><div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/functional-error-handling-in-nodejs-with-the-result-pattern\">Functional Error Handling in Node.js With The Result Pattern</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/functional-error-handling-in-nodejs-with-the-result-pattern\">Learn how to improve your error handling in Node.js by using the Result Pattern. (5 Min)</a></p></div><div><p>Oct 21 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!nzBv!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd22faee-c7fc-4590-9183-5163d2183c21_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!nzBv!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd22faee-c7fc-4590-9183-5163d2183c21_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/own-your-onboarding-the-first-30-60-90-plan-new-company-hiring\">Own Your Onboarding: The First 90 Days That Define Your Career 🚀</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/own-your-onboarding-the-first-30-60-90-plan-new-company-hiring\">A practical guide to shipping fast and making an impact from day one. (6 Min)</a></p></div><div><p>Oct 7 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!Mkd6!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa717e639-5861-472e-b3ca-d5ffbd05b6b5_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!Mkd6!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa717e639-5861-472e-b3ca-d5ffbd05b6b5_1456x1048.png\" /></picture></div></div></div><h3>September 2025</h3><div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/javascript-interview-questions-promises-async-await-event-loop-demystified\">Ace Your Next JavaScript Interview: Promises, Async/Await, Event Loop (Part 4) ✨ </a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/javascript-interview-questions-promises-async-await-event-loop-demystified\">Learn the deeper concepts in JavaScript, such as Promises, Async/Await, and Event-Loop (5 min)</a></p></div><div><p>Sep 17 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!WCww!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1b51e40-122e-4a15-98e8-da802be52c92_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!WCww!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1b51e40-122e-4a15-98e8-da802be52c92_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/what-is-a-modular-monolith-benefits-and-microservices-challenges\">What Is a Modular Monolith And Why You Should Care? 🔥</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/what-is-a-modular-monolith-benefits-and-microservices-challenges\">Learn more about modular monoliths, their benefits, and the challenges with microservices. (6 min)</a></p></div><div><p>Sep 9 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!mZOf!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F660ed777-9159-415d-9d85-0732ae775fc4_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!mZOf!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F660ed777-9159-415d-9d85-0732ae775fc4_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/code-review-guidelines-for-authors-and-reviewers-quality-code-reviews\">Code Review Guidelines ✅</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/code-review-guidelines-for-authors-and-reviewers-quality-code-reviews\">What Authors and Reviewers Should Actually Do? (5 min)</a></p></div><div><p>Sep 2 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!zYuH!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F162d978b-6e6a-4dfe-94ef-1c9872b3644d_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!zYuH!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F162d978b-6e6a-4dfe-94ef-1c9872b3644d_1456x1048.png\" /></picture></div></div></div><h3>August 2025</h3><div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/clean-code-8-practical-tips-to-write-clean-functions\">Clean Code: 8 Tips to Write Clean Functions 🔥</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/clean-code-8-practical-tips-to-write-clean-functions\">Learn about eight practical tips on writing clean functions. (5 min)</a></p></div><div><p>Aug 26 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!dX6B!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec4ef91-d637-4f28-b186-0ec93dc6b382_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!dX6B!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec4ef91-d637-4f28-b186-0ec93dc6b382_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/why-you-cant-afford-to-ignore-typescript-long-term-benefits-code-quality\">Why You Can't Afford to Ignore TypeScript? 🌟</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/why-you-cant-afford-to-ignore-typescript-long-term-benefits-code-quality\">We ship faster when we break fewer things. TypeScript helps you do that. (4 min)</a></p></div><div><p>Aug 17 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!6HM7!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e6157-6885-4585-8b2c-945833350755_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!6HM7!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e6157-6885-4585-8b2c-945833350755_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/nine-vs-code-or-cursor-ide-extensions-code-editor\">Nine VS Code (or Cursor) Extensions That Make My Daily Work Much Easier </a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/nine-vs-code-or-cursor-ide-extensions-code-editor\">Learn how to improve your IDE and increase your coding speed with these extensions. (4 min)</a></p></div><div><p>Aug 3 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!rzGZ!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff5b1ee8-ac39-44ec-a658-11df9eed926c_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!rzGZ!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff5b1ee8-ac39-44ec-a658-11df9eed926c_1456x1048.png\" /></picture></div></div></div><h3>July 2025</h3><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/graphql-schema-design-101-best-practices-key-principles-flexible-maintainable-apis\">GraphQL Schema Design 101</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/graphql-schema-design-101-best-practices-key-principles-flexible-maintainable-apis\">Learn proven best practices and key principles for designing robust GraphQL Schemas. (5 min)</a></p></div><div><p>Jul 13 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!xKaA!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2412a2a4-659e-4f6f-bb07-7d8be4cfe69b_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!xKaA!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2412a2a4-659e-4f6f-bb07-7d8be4cfe69b_1456x1048.png\" /></picture></div></div><h3>June 2025</h3><div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/anti-clean-code-the-fluid-trap-fragile-lax-untested-insecure-disorganized-code\">Anti Clean Code: The F.L.U.I.D. Trap ⚠️</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/anti-clean-code-the-fluid-trap-fragile-lax-untested-insecure-disorganized-code\">Learn about the five key ways a code can go wrong and know what to be careful about. (6 minutes)</a></p></div><div><p>Jun 29 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!M8VL!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb1947a-628f-4939-b46f-9bfac9963387_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!M8VL!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb1947a-628f-4939-b46f-9bfac9963387_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/ace-your-next-javascript-interview-this-new-keywords-prototypes-classes\">Ace Your Next JavaScript Interview: `this`, `new`, Prototypes, Classes (Part 3) ✨</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/ace-your-next-javascript-interview-this-new-keywords-prototypes-classes\">Learn the deeper concepts in JavaScript, such as `this`, `new`, Prototypes, and Classes (7 minutes)</a></p></div><div><p>Jun 18 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!-XiD!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd10ac4c5-d303-453e-b169-409174170eaa_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!-XiD!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd10ac4c5-d303-453e-b169-409174170eaa_1456x1048.png\" /></picture></div></div><div><div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/use-compound-components-react-advanced-design-pattern\">Use Compound Components React Advanced Pattern For Better Software Design 🧑🎨</a></p></div><div><p><a target=\"_blank\" href=\"https://thetshaped.dev/p/use-compound-components-react-advanced-design-pattern\">Learn how to create and design better React components using the Compound Components React advanced pattern.</a></p></div><div><p>Jun 8 <span>•</span> <span><div><p><a target=\"_blank\" href=\"https://substack.com/@petarivanovv9\">Petar Ivanov</a></p></div></span></p></div></div><div><picture><source type=\"image/webp\" srcset=\"https://substackcdn.com/image/fetch/$s_!VNNE!,w_320,h_213,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F497baa08-eebf-4ca5-ab1f-abc12d45830f_1456x1048.png\"></source><img src=\"https://substackcdn.com/image/fetch/$s_!VNNE!,w_320,h_213,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_center/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F497baa08-eebf-4ca5-ab1f-abc12d45830f_1456x1048.png\" /></picture></div></div></div></div>",
"author": "Petar Ivanov",
"favicon": "https://substackcdn.com/image/fetch/$s_!8rw6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ed74925-4e5c-4468-bc2b-2124fa44481a%2Ffavicon-48x48.png",
"source": "thetshaped.dev",
"published": "",
"ttr": 64,
"type": "article"
}



