{
    "href": "/tag/patterns/",
    "relId": "patterns",
    "title": "Patterns",
    "author": null,
    "created": null,
    "updated": [],
    "markup": "markdown",
    "html": "",
    "posts": [
        {
            "href": "/post/2015/07/07/a-factory-should-create-not-retain/",
            "relId": "2015/07/07/a-factory-should-create-not-retain",
            "title": "A Factory Should Create, Not Retain",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2015-07-07 18:06:50 UTC",
            "updated": [
                "2015-07-07 18:06:50 UTC"
            ]
        },
        {
            "href": "/post/2015/05/19/radar-a-psr-7-action-domain-responder-framework/",
            "relId": "2015/05/19/radar-a-psr-7-action-domain-responder-framework",
            "title": "Radar: A PSR-7 Action-Domain-Responder Framework",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/radar/",
                    "relId": "radar",
                    "title": "Radar",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2015-05-19 15:00:58 UTC",
            "updated": [
                "2015-05-19 15:00:58 UTC"
            ]
        },
        {
            "href": "/post/2015/01/21/mvc-and-adr-are-user-interface-patterns-not-application-architectures/",
            "relId": "2015/01/21/mvc-and-adr-are-user-interface-patterns-not-application-architectures",
            "title": "MVC and ADR are User-Interface Patterns, Not Application Architectures",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2015-01-21 15:54:31 UTC",
            "updated": [
                "2015-01-21 15:54:31 UTC"
            ]
        },
        {
            "href": "/post/2014/10/09/whats-the-difference-between-a-pivot-table-and-an-association-table/",
            "relId": "2014/10/09/whats-the-difference-between-a-pivot-table-and-an-association-table",
            "title": "What's The Difference Between A \"Pivot Table\" And An \"Association Table\"?",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-10-09 11:43:29 UTC",
            "updated": [
                "2014-10-09 11:43:29 UTC"
            ]
        },
        {
            "href": "/post/2014/10/06/whats-the-difference-between-tightly-loosely-and-de-coupled/",
            "relId": "2014/10/06/whats-the-difference-between-tightly-loosely-and-de-coupled",
            "title": "What's The Difference Between Tightly-, Loosely-, and De-Coupled ?",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/aura/",
                    "relId": "aura",
                    "title": "Aura",
                    "author": null,
                    "created": "2020-09-14 21:51:57 UTC",
                    "updated": [
                        "2020-09-14 21:51:57 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-10-06 12:00:02 UTC",
            "updated": [
                "2014-10-06 12:00:02 UTC"
            ]
        },
        {
            "href": "/post/2014/09/30/action-domain-responder-and-the-domain-payload-pattern/",
            "relId": "2014/09/30/action-domain-responder-and-the-domain-payload-pattern",
            "title": "Action-Domain-Responder and the \"Domain Payload\" Pattern",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-09-30 17:16:14 UTC",
            "updated": [
                "2014-09-30 17:16:14 UTC",
                "2019-12-10 17:04:27 UTC",
                "2019-12-10 17:08:00 UTC"
            ]
        },
        {
            "href": "/post/2014/07/17/action-domain-responder-content-negotiation-and-routers/",
            "relId": "2014/07/17/action-domain-responder-content-negotiation-and-routers",
            "title": "Action-Domain-Responder, Content Negotiation, and Routers",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/aura/",
                    "relId": "aura",
                    "title": "Aura",
                    "author": null,
                    "created": "2020-09-14 21:51:57 UTC",
                    "updated": [
                        "2020-09-14 21:51:57 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-07-17 16:55:08 UTC",
            "updated": [
                "2014-07-17 16:55:08 UTC"
            ]
        },
        {
            "href": "/post/2014/06/05/refactoring-to-action-domain-responder/",
            "relId": "2014/06/05/refactoring-to-action-domain-responder",
            "title": "Refactoring To Action-Domain-Responder",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/aura/",
                    "relId": "aura",
                    "title": "Aura",
                    "author": null,
                    "created": "2020-09-14 21:51:57 UTC",
                    "updated": [
                        "2020-09-14 21:51:57 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-06-05 15:20:50 UTC",
            "updated": [
                "2014-06-05 15:20:50 UTC"
            ]
        },
        {
            "href": "/post/2014/05/26/the-template-is-not-the-view/",
            "relId": "2014/05/26/the-template-is-not-the-view",
            "title": "The Template Is Not The View",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-05-26 16:23:18 UTC",
            "updated": [
                "2014-05-26 16:23:18 UTC"
            ]
        },
        {
            "href": "/post/2014/05/19/stephan-hochdorfer-and-action-domain-responder/",
            "relId": "2014/05/19/stephan-hochdorfer-and-action-domain-responder",
            "title": "Stephan Hochd\u00f6rfer and Action-Domain-Responder",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-05-19 16:10:18 UTC",
            "updated": [
                "2014-05-19 16:10:18 UTC"
            ]
        },
        {
            "href": "/post/2014/05/12/quick-hits-adr-pattern-progress-mlaphp-softcover-aura-notices/",
            "relId": "2014/05/12/quick-hits-adr-pattern-progress-mlaphp-softcover-aura-notices",
            "title": "Quick Hits: ADR Pattern Progress, MLAPHP Softcover, Aura Notices",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/aura/",
                    "relId": "aura",
                    "title": "Aura",
                    "author": null,
                    "created": "2020-09-14 21:51:57 UTC",
                    "updated": [
                        "2020-09-14 21:51:57 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/legacy/",
                    "relId": "legacy",
                    "title": "Legacy",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-05-12 16:54:15 UTC",
            "updated": [
                "2014-05-12 16:54:15 UTC"
            ]
        },
        {
            "href": "/post/2014/05/05/action-domain-response-a-tentative-mvc-refinement/",
            "relId": "2014/05/05/action-domain-response-a-tentative-mvc-refinement",
            "title": "Action-Domain-Responder: A Tentative MVC Refinement",
            "author": "pmjones",
            "markup": "html",
            "tags": [
                {
                    "href": "/tag/adr/",
                    "relId": "adr",
                    "title": "Action Domain Responder",
                    "author": null,
                    "created": "2020-08-17 21:07:42 UTC",
                    "updated": [
                        "2020-08-17 21:07:42 UTC",
                        "2020-09-22 15:41:16 UTC",
                        "2020-10-14 18:20:29 UTC",
                        "2020-10-14 18:36:31 UTC",
                        "2020-10-14 18:36:53 UTC",
                        "2020-10-14 18:37:08 UTC",
                        "2020-10-14 18:37:48 UTC",
                        "2020-10-14 18:39:26 UTC",
                        "2020-10-14 19:03:17 UTC",
                        "2020-10-14 19:03:35 UTC",
                        "2020-10-26 18:12:53 UTC"
                    ],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/patterns/",
                    "relId": "patterns",
                    "title": "Patterns",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/php/",
                    "relId": "php",
                    "title": "PHP",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                },
                {
                    "href": "/tag/programming/",
                    "relId": "programming",
                    "title": "Programming",
                    "author": null,
                    "created": null,
                    "updated": [],
                    "markup": "markdown"
                }
            ],
            "created": "2014-05-05 16:11:54 UTC",
            "updated": [
                "2014-05-05 16:11:54 UTC"
            ]
        }
    ]
}
