41554 blogs · [ { "id": "01a087e9-21a1-705f-9bd1-ae5f5e632b40", "title": "How LLMs actually call functions (they don't)", "url": "https://tahazsh.com/blog/llm-tools-explained/", "published_at": "2026-08-12T19:33:51+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f5e74f044", "title": "I tested if system prompts actually matter, here's what I found", "url": "https://tahazsh.com/blog/does-system-prompt-matter/", "published_at": "2026-08-08T11:40:29+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f5ec6b0c5", "title": "Make your JavaScript more readable with named parameters", "url": "https://tahazsh.com/blog/named-parameters-in-js/", "published_at": "2025-01-26T05:48:57+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f5ed7fde6", "title": "Strategy pattern is better when done with functions", "url": "https://tahazsh.com/blog/strategy-pattern-with-functions/", "published_at": "2024-12-22T08:50:47+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f5f3bef40", "title": "JavaScript's Reduce: From Array to Anything", "url": "https://tahazsh.com/blog/javascript-array-reduce/", "published_at": "2024-11-03T06:41:32+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f5f6a4af2", "title": "Why you shouldn't use async and defer in the same script tag", "url": "https://tahazsh.com/blog/async-or-defer-scripts/", "published_at": "2024-09-15T03:43:30+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6021f236", "title": "Mastering closures in JavaScript", "url": "https://tahazsh.com/blog/mastering-closures-in-js/", "published_at": "2024-03-15T01:12:11+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f60dd7511", "title": "Software design patterns and principles are not the goal", "url": "https://tahazsh.com/blog/design-patterns-and-principles-are-not-the-goal/", "published_at": "2023-12-12T00:29:36+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f61aac156", "title": "Creating a Twitter-Like Header Transition on Scroll", "url": "https://tahazsh.com/blog/twitter-like-header-transition/", "published_at": "2023-07-29T00:00:00+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f620236e3", "title": "Creating a Smooth Card-to-Modal Transition with Vanilla JavaScript", "url": "https://tahazsh.com/blog/smooth-card-to-modal-transition/", "published_at": "2023-06-02T01:19:53+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f62d1b335", "title": "Building a Seamless Drag-to-Reorder Widget with Vanilla JavaScript", "url": "https://tahazsh.com/blog/seamless-ui-with-js-drag-to-reorder-example/", "published_at": "2023-05-23T03:47:53+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f63311943", "title": "How to Add Web Push Notifications to Your Web App", "url": "https://tahazsh.com/blog/web-push-notifications/", "published_at": "2023-05-02T08:51:12+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6419fc46", "title": "Introduction to testing", "url": "https://tahazsh.com/blog/introduction-to-testing/", "published_at": "2023-03-30T11:45:40+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f64bf1295", "title": "Create something for nothing", "url": "https://tahazsh.com/blog/null-object-pattern/", "published_at": "2023-03-28T01:28:08+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f651b7f06", "title": "How to add additional data to your source data", "url": "https://tahazsh.com/blog/enrich-your-source-data/", "published_at": "2023-03-26T09:59:08+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6582bd12", "title": "Checking object equality with value objects", "url": "https://tahazsh.com/blog/object-equality-with-value-objects/", "published_at": "2023-03-23T11:44:04+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f665ba13a", "title": "Control the function internals with callbacks", "url": "https://tahazsh.com/blog/control-the-function-internals-with-callbacks/", "published_at": "2023-03-21T03:54:39+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f66e5643b", "title": "Implement undo with the command pattern", "url": "https://tahazsh.com/blog/undo-with-command-pattern/", "published_at": "2023-03-19T09:42:48+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f67030331", "title": "How to make long functions more readable", "url": "https://tahazsh.com/blog/make-long-functions-more-readable/", "published_at": "2023-03-16T07:36:50+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6784ebc8", "title": "You can optimize your algorithms later", "url": "https://tahazsh.com/blog/extract-algorithms/", "published_at": "2023-03-14T09:00:24+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f68666782", "title": "Records vs. Objects", "url": "https://tahazsh.com/blog/records-vs-objects/", "published_at": "2023-03-12T07:50:03+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f688a4f6a", "title": "Provide an API for your complex arrays", "url": "https://tahazsh.com/blog/collection-encapsulation/", "published_at": "2023-03-09T09:17:40+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f693388ed", "title": "Split your code into phases", "url": "https://tahazsh.com/blog/split-phase/", "published_at": "2023-03-07T06:09:32+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6976dd4c", "title": "Create objects with factory functions", "url": "https://tahazsh.com/blog/factory-function/", "published_at": "2023-03-05T05:54:58+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f69bc4a9f", "title": "Is global data bad?", "url": "https://tahazsh.com/blog/is-global-data-bad/", "published_at": "2023-03-02T10:48:33+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f69e97c8c", "title": "Clear Names", "url": "https://tahazsh.com/blog/clear-names/", "published_at": "2023-02-28T05:33:41+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6a3d6f70", "title": "What is Polymorphism?", "url": "https://tahazsh.com/blog/what-is-polymorphism/", "published_at": "2023-02-26T08:13:02+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6ab20072", "title": "Group related functions", "url": "https://tahazsh.com/blog/group-related-functions/", "published_at": "2023-02-23T05:37:31+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6b537562", "title": "Hide complex conditional details", "url": "https://tahazsh.com/blog/extract-conditional/", "published_at": "2023-02-21T07:11:35+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6bca717e", "title": "Should you pass the whole object to a function?", "url": "https://tahazsh.com/blog/pass-the-whole-object-to-a-function/", "published_at": "2023-02-19T06:23:41+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6cbbf59a", "title": "Encapsulation: the two worlds", "url": "https://tahazsh.com/blog/encapsulation/", "published_at": "2023-02-16T09:49:45+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6d54ebd2", "title": "Introduce your own data types", "url": "https://tahazsh.com/blog/introduce-your-own-data-types/", "published_at": "2023-02-14T14:00:00+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6dfe121b", "title": "Simpler conditionals with Guard Clauses", "url": "https://tahazsh.com/blog/simpler-conditionals-with-guard-clauses/", "published_at": "2023-02-12T14:00:00+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6ef671a0", "title": "Introduce Parameter Object", "url": "https://tahazsh.com/blog/introduce-parameter-object/", "published_at": "2023-02-09T11:52:18+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6fc85e64", "title": "You probably don't need loops", "url": "https://tahazsh.com/blog/you-probably-dont-need-loops/", "published_at": "2023-02-07T10:22:43+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f6ff167f2", "title": "Building a SolidJS App With SolidStart From Scratch", "url": "https://tahazsh.com/blog/building-a-solidjs-app-from-scratch/", "published_at": "2022-11-14T05:11:43+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f7012adcf", "title": "9 Tips to Write Better Vue Components", "url": "https://tahazsh.com/blog/vue-component-design-tips/", "published_at": "2022-09-27T07:33:00+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f70ccc3e0", "title": "How to Implement Name-Based Avatar Component in Vue", "url": "https://tahazsh.com/blog/implement-avatar-component-in-vue-3/", "published_at": "2022-09-22T08:38:52+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f70d0dab2", "title": "Fast Frontend Development With Mocked GraphQL", "url": "https://tahazsh.com/blog/mock-graphql-data-on-the-frontend/", "published_at": "2022-09-21T12:36:35+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f71c1ac13", "title": "How to Add a Sliding Sidebar Menu to Your Site", "url": "https://tahazsh.com/blog/sidebar-menu-animation/", "published_at": "2022-09-19T07:02:56+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f72a68dad", "title": "Building Your First Single-Page Application in Vue", "url": "https://tahazsh.com/blog/building-spa-in-vue/", "published_at": "2022-09-15T10:13:44+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f73984220", "title": "How to Detect Outside Clicks in Vue", "url": "https://tahazsh.com/blog/how-to-detect-outside-clicks-in-vue/", "published_at": "2022-09-08T05:06:18+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f73b2b245", "title": "How to Make Your Page Load Faster", "url": "https://tahazsh.com/blog/how-to-make-your-page-load-faster/", "published_at": "2022-08-24T06:23:26+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f73c14d73", "title": "Your First Real-Time App in Node", "url": "https://tahazsh.com/blog/your-first-realtime-app-in-node/", "published_at": "2019-12-05T19:59:00+00:00" }, { "id": "01a087e9-21a1-705f-9bd1-ae5f743980db", "title": "Understand JWT in 3 minutes", "url": "https://tahazsh.com/blog/understand-jwt-in-3-minutes/", "published_at": "2019-11-25T18:01:00+00:00" } ] posts Claim your blog
Back to tahazsh.com
Blog · corpus.blog/blogs/tahazsh.com/posts

tahazsh.com

tahazsh.com

2026

2025

2024

2023

2022

2019