{"id":499,"date":"2010-03-12T12:07:52","date_gmt":"2010-03-12T19:07:52","guid":{"rendered":"https:\/\/simpleprogrammer.com\/?p=499"},"modified":"2020-12-31T22:52:52","modified_gmt":"2021-01-01T03:52:52","slug":"when-scrum-hurts-mob-achitecture","status":"publish","type":"post","link":"https:\/\/simpleprogrammer.com\/when-scrum-hurts-mob-achitecture\/","title":{"rendered":"When Scrum Hurts: Mob Architecture"},"content":{"rendered":"<h2>If you have been following my blog, you know that I have a <a href=\"https:\/\/simpleprogrammer.com\/2009\/12\/05\/scrumbut-double-fudge-sunday-and-scrummaster-personal-trainer\/\">love<\/a>\/<a href=\"https:\/\/simpleprogrammer.com\/2010\/02\/23\/scrum-will-die\/\">hate<\/a> relationship with Scrum.<\/h2>\n<p>\\n\\nI&#8217;ve previously talked about why I think <a href=\"https:\/\/simpleprogrammer.com\/2010\/02\/23\/scrum-will-die\/\">Scrum will eventually die<\/a>\u00a0and I am still pretty much convinced of that point.\u00a0 Scrum has become something you sell through training and consulting.\u00a0 If you make your living off of doing this, sorry, but you may be part of the problem.\\n\\nWhat this post is really about though is the problem of good architecture when implementing Scrum.\u00a0 In my experience, it is very difficult to create or maintain a good architecture and do Scrum.\u00a0 There is one very simple reason for this: <strong>mobs don&#8217;t build good architectures<\/strong>.\\n\\n<\/p>\n<h2>Why?<\/h2>\n<p>\\n\\nLet me give you an example that helps to illustrate my point.\u00a0 Let us take a second to think about real physical engineering and architecture.\u00a0 Let us say we are going to put together a team to design and build a custom home.\\n\\nSo we get together a plumber, an electrician, a couple of framers and an architect.\u00a0 Now, let&#8217;s have them start building the house.\u00a0 What do you think the architecture of the building will be like?\u00a0 What if the plumber and electrician know a good amount about architecture because they studied it in high school?\u00a0 They outvote the actual architect.\u00a0 In general the team is going to benefit from the real architect&#8217;s experience and guidance, but when he understands a critical component which the other team members do not see, he is going to be overridden and that will spell trouble down the line.\\n\\n<a href=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-500\" title=\"UglyHouse\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg\" alt=\"\" width=\"456\" height=\"295\" srcset=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg 456w, https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse-300x194.jpg 300w\" sizes=\"auto, (max-width: 456px) 100vw, 456px\" \/><\/a>\\n\\nNow, obviously this parallel does not completely apply.\u00a0 I am just trying to take one aspect of it for the point of this illustration: you don&#8217;t want a group of people, as intelligent as they are, to make a decision which could be better left in the hands of an expert.\\n\\nAt this point you might be thinking &#8220;what an arrogant jerk!&#8221;\u00a0 You think a so called &#8220;software architect&#8221; knows so much better than the average developer?\u00a0 No, that is not exactly the point.\u00a0 The point is that <strong>there is a difference in level of experience and ability in software people, roles and labels aside, and when you use a democracy of team based decision-making methods, you get an average of the skill level and experience of the whole team as a result.<\/strong>\u00a0 It is a mouthful, but read that over a few times until you get my point.\u00a0 I think it is pretty hard to argue against, but let me give one more illustration.\\n\\nLet us say now that you are going into a hospital to get heart surgery done.\u00a0 Now, this kind of procedure is not a one man operation.\u00a0 You would typically have a surgeon, an\u00a0anesthesiologist, several nurses, and other doctors involved.\u00a0 But let&#8217;s say for this instance that we let this surgical team operate like a Scrum team.\u00a0 Instead of the surgeon or chief\u00a0medical officer ultimately calling the shots, the team will make a decision as a whole.\u00a0 Would you be ok with that?\u00a0 The nurse has the same vote as the surgeon?\u00a0 Two nurses can override the surgeon&#8217;s decision?\u00a0 I think I would be a little bit alarmed, especially if I sat in on their design session.\\n\\n<a href=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/henrysurgery.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-501\" title=\"henrysurgery\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/henrysurgery.jpg?w=300\" alt=\"\" width=\"300\" height=\"283\" \/><\/a>\\n\\nI&#8217;m not trying to pick on anyone here or devalue anyone.\u00a0 I am also not trying to destroy the concept of team.\u00a0 Teams and teamwork are very important in the development of software.\u00a0 But I hope you can see the point that Scrum can tend to lean towards a mob built architecture for a system, and that architecture is only as good as the average of the abilities of the team members.\u00a0\u00a0Although more often than not it&#8217;s really just as good as the most vocal and assertive member(s) of the team.\\n\\n<\/p>\n<h2>Where Scrum and Scrum-like processes fail<\/h2>\n<p>\\n\\nI don&#8217;t see how\u00a0a resolution to this problem fits inside of the Scrum framework, and that is\u00a0a problem.\u00a0 The idea of a completely self-managing team is ok for making construction type decisions about building the software, but it has no solution for the overall architecture and general best practices for the development of the application.\u00a0 As much as we can despise hierarchy, it really has a value that is completely missed by Scrum.\u00a0 You really want to have the more <span style=\"text-decoration: line-through;\">senior<\/span> highly skilled <span style=\"text-decoration: line-through;\">developers<\/span>\u00a0technical people\u00a0with more power over decisions and direction than your less skilled.\u00a0 This isn&#8217;t mean, it isn&#8217;t spiteful or power-mongering, it is common sense.\u00a0 The problem with the self-managing-everyone-is-equal team is that it levels the field.\\n\\n<\/p>\n<h2>So what is the solution?<\/h2>\n<p>\\n\\nWould I offer up a problem without offering up a solution? \u00a0There are several ways of dealing with this problem.\u00a0 It depends on how far you are willing to step outside of Scrum.\\n\\nSolution 1: Scrumminess Factor: 9\\n\\nAppoint a small team of technical and business architects that have the responsibility of:\\n\\n<\/p>\n<ul>\\n    <\/p>\n<li>Overseeing the general architecture of the system<\/li>\n<p>\\n    <\/p>\n<li>Creating development best practices and guidelines<\/li>\n<p>\\n    <\/p>\n<li>Attending design sessions for other teams<\/li>\n<p>\\n    <\/p>\n<li>Stepping in when needed to steer a team back on the right course<\/li>\n<p>\\n<\/ul>\n<p>\\n\\nThis solution works only if you have several Scrum teams on the project, where it would make sense to have a team dedicated to architecture.\u00a0 This team is also a good one to be <a href=\"https:\/\/simpleprogrammer.com\/2009\/12\/03\/dedicated-developer-tools-teams\/\">creating developer tools<\/a>.\u00a0 I have actually been part of a team doing this kind of role, and I think it worked out pretty well.\u00a0 It doesn&#8217;t really violate Scrum because that team is a separate Scrum team with a different kind of backlog.\\n\\nSolution 2: Scrumminess Factor: 6\\n\\nAppoint a technical architect to the project.\u00a0 This person is in charge of the technical people on all of the teams for technical direction, but not HR duties.\u00a0 This role would have the ultimate authority on any kind of development and architecture decisions for the project.\u00a0 They would be a floating resource that could help teams at times where needed.\u00a0 This person would be thinking about the bigger architecture picture that is being created by each of the teams.\\n\\nSolution 3: Scrumminess Factor: 3\\n\\nAppoint technical leads on the teams which are responsible for the architecture and ultimate technical direction of the team they are on.\u00a0 If you have multiple teams the technical leads should have a technical lead for the technical leads.\u00a0 This allows for a unified vision when there is dissent among the technical team leads.\u00a0 It has a low Scrum factor because it puts a direct leadership role on the Scrum team, but it allows for the solution to the mob architecture problem, while still keeping the architecture within the team.\\n\\nOne final word here.\u00a0 If you are still thinking that a central authority is not important to a business, consider this:\u00a0 every company I know of has either a CEO or a president.\u00a0 I have never seen a company with a Chief Executive Committee.\u00a0 Sure, there is\u00a0a board of directors, whom the CEO ultimately is accountable to, but you have one person setting the vision and business direction of the company.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you have been following my blog, you know that I have a love\/hate relationship with Scrum. \\n\\nI&#8217;ve previously talked about why I think Scrum will eventually die\u00a0and I am still pretty much convinced of that point.\u00a0 Scrum has become something you sell through training and consulting.\u00a0 If you make your living off of doing&#8230;<\/p>\n","protected":false},"author":2,"featured_media":500,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[11287,2290,148,31679,46805,1],"tags":[],"class_list":["post-499","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agile","category-architecture","category-design","category-process-improvement","category-scrum","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>When Scrum Hurts: Mob Architecture | Simple Programmer<\/title>\n<meta name=\"description\" content=\"An explanation of how Scrum can result in poor software architecture and a list of ways this problem can be solved while still adhering to Scrum.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/simpleprogrammer.com\/products\/careerguide\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"When Scrum Hurts: Mob Architecture | Simple Programmer\" \/>\n<meta property=\"og:description\" content=\"An explanation of how Scrum can result in poor software architecture and a list of ways this problem can be solved while still adhering to Scrum.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/simpleprogrammer.com\/products\/careerguide\" \/>\n<meta property=\"og:site_name\" content=\"Simple Programmer\" \/>\n<meta property=\"article:published_time\" content=\"2010-03-12T19:07:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-01T03:52:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"456\" \/>\n\t<meta property=\"og:image:height\" content=\"295\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"John Sonmez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"John Sonmez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/when-scrum-hurts-mob-achitecture\\\/\"},\"author\":{\"name\":\"John Sonmez\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#\\\/schema\\\/person\\\/1abc70edfb189184827740310672de67\"},\"headline\":\"When Scrum Hurts: Mob Architecture\",\"datePublished\":\"2010-03-12T19:07:52+00:00\",\"dateModified\":\"2021-01-01T03:52:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/when-scrum-hurts-mob-achitecture\\\/\"},\"wordCount\":1227,\"commentCount\":11,\"image\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2010\\\/03\\\/uglyhouse.jpg\",\"articleSection\":[\"Agile\",\"Architecture\",\"Design\",\"Process Improvement\",\"Scrum\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/when-scrum-hurts-mob-achitecture\\\/\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide\",\"name\":\"When Scrum Hurts: Mob Architecture | Simple Programmer\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2010\\\/03\\\/uglyhouse.jpg\",\"datePublished\":\"2010-03-12T19:07:52+00:00\",\"dateModified\":\"2021-01-01T03:52:52+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#\\\/schema\\\/person\\\/1abc70edfb189184827740310672de67\"},\"description\":\"An explanation of how Scrum can result in poor software architecture and a list of ways this problem can be solved while still adhering to Scrum.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2010\\\/03\\\/uglyhouse.jpg\",\"contentUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2010\\\/03\\\/uglyhouse.jpg\",\"width\":456,\"height\":295,\"caption\":\"bad architecture\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/simpleprogrammer.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"When Scrum Hurts: Mob Architecture\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#website\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/\",\"name\":\"Simple Programmer\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/simpleprogrammer.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#\\\/schema\\\/person\\\/1abc70edfb189184827740310672de67\",\"name\":\"John Sonmez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g\",\"caption\":\"John Sonmez\"},\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/author\\\/jsonmez\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"When Scrum Hurts: Mob Architecture | Simple Programmer","description":"An explanation of how Scrum can result in poor software architecture and a list of ways this problem can be solved while still adhering to Scrum.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/simpleprogrammer.com\/products\/careerguide","og_locale":"en_US","og_type":"article","og_title":"When Scrum Hurts: Mob Architecture | Simple Programmer","og_description":"An explanation of how Scrum can result in poor software architecture and a list of ways this problem can be solved while still adhering to Scrum.","og_url":"https:\/\/simpleprogrammer.com\/products\/careerguide","og_site_name":"Simple Programmer","article_published_time":"2010-03-12T19:07:52+00:00","article_modified_time":"2021-01-01T03:52:52+00:00","og_image":[{"width":456,"height":295,"url":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg","type":"image\/jpeg"}],"author":"John Sonmez","twitter_card":"summary_large_image","twitter_misc":{"Written by":"John Sonmez","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#article","isPartOf":{"@id":"https:\/\/simpleprogrammer.com\/when-scrum-hurts-mob-achitecture\/"},"author":{"name":"John Sonmez","@id":"https:\/\/simpleprogrammer.com\/#\/schema\/person\/1abc70edfb189184827740310672de67"},"headline":"When Scrum Hurts: Mob Architecture","datePublished":"2010-03-12T19:07:52+00:00","dateModified":"2021-01-01T03:52:52+00:00","mainEntityOfPage":{"@id":"https:\/\/simpleprogrammer.com\/when-scrum-hurts-mob-achitecture\/"},"wordCount":1227,"commentCount":11,"image":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage"},"thumbnailUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg","articleSection":["Agile","Architecture","Design","Process Improvement","Scrum"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/simpleprogrammer.com\/products\/careerguide#respond"]}]},{"@type":"WebPage","@id":"https:\/\/simpleprogrammer.com\/when-scrum-hurts-mob-achitecture\/","url":"https:\/\/simpleprogrammer.com\/products\/careerguide","name":"When Scrum Hurts: Mob Architecture | Simple Programmer","isPartOf":{"@id":"https:\/\/simpleprogrammer.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage"},"image":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage"},"thumbnailUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg","datePublished":"2010-03-12T19:07:52+00:00","dateModified":"2021-01-01T03:52:52+00:00","author":{"@id":"https:\/\/simpleprogrammer.com\/#\/schema\/person\/1abc70edfb189184827740310672de67"},"description":"An explanation of how Scrum can result in poor software architecture and a list of ways this problem can be solved while still adhering to Scrum.","breadcrumb":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/simpleprogrammer.com\/products\/careerguide"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage","url":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg","contentUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2010\/03\/uglyhouse.jpg","width":456,"height":295,"caption":"bad architecture"},{"@type":"BreadcrumbList","@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/simpleprogrammer.com\/"},{"@type":"ListItem","position":2,"name":"When Scrum Hurts: Mob Architecture"}]},{"@type":"WebSite","@id":"https:\/\/simpleprogrammer.com\/#website","url":"https:\/\/simpleprogrammer.com\/","name":"Simple Programmer","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/simpleprogrammer.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/simpleprogrammer.com\/#\/schema\/person\/1abc70edfb189184827740310672de67","name":"John Sonmez","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g","caption":"John Sonmez"},"url":"https:\/\/simpleprogrammer.com\/author\/jsonmez\/"}]}},"_links":{"self":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts\/499","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/comments?post=499"}],"version-history":[{"count":0,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts\/499\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/media\/500"}],"wp:attachment":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/media?parent=499"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/categories?post=499"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/tags?post=499"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}