{"id":27343,"date":"2017-02-12T19:39:08","date_gmt":"2017-02-12T17:39:08","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=27343"},"modified":"2017-02-12T19:39:08","modified_gmt":"2017-02-12T17:39:08","slug":"modern-software-over-engineering-mistakes","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/","title":{"rendered":"Modern Software Over-Engineering Mistakes"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>&#8220;<a href=\"https:\/\/medium.com\/@rdsubhas\/10-modern-software-engineering-mistakes-bc67fbef4fc8#.qhzzeapog\">Modern Software Over-Engineering Mistakes<\/a>&#8221; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day.<\/p>\n<p><!--more--><\/p>\n<blockquote><p>Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and <strong>F*cking business requirements<\/strong> .<\/p><\/blockquote>\n<p>Here&#8217;s the list of things discussed in the article with tl;dr (too long; didn&#8217;t read) summaries:<\/p>\n<p><strong>Engineering is more clever than Business<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aThe House (Business) Always Wins.<\/p><\/blockquote>\n<p><strong>Reusable Business Functionality<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aPrefer Isolating Actions than Combining<\/p><\/blockquote>\n<p><strong>Everything is Generic<\/strong><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"27345\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/perfect-abstraction\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction.png?fit=800%2C560&amp;ssl=1\" data-orig-size=\"800,560\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"perfect abstraction\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction.png?fit=660%2C462&amp;ssl=1\" class=\"aligncenter size-medium wp-image-27345\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction-500x350.png?resize=500%2C350&#038;ssl=1\" alt=\"\" width=\"500\" height=\"350\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction.png?resize=500%2C350&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction.png?resize=768%2C538&amp;ssl=1 768w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction.png?w=800&amp;ssl=1 800w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aDuplication is better than the wrong abstraction<\/p><\/blockquote>\n<p><strong>Shallow Wrappers<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aWrappers are an exception, not the norm. Don\u2019t wrap good libraries for the sake of wrapping<\/p><\/blockquote>\n<p><strong>Applying Quality like a Tool<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aAlways take a step back and look at the macro picture<\/p><\/blockquote>\n<p><strong>Overzealous Adopter Syndrome<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aTL;DRs should not be used everywhere<\/p><\/blockquote>\n<p><strong>&lt;X&gt;\u2013ity <\/strong><\/p>\n<p>As in configurability, security, scalability, maintainability, extensibility, etc.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"27344\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/x-ty\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty.png?fit=863%2C204&amp;ssl=1\" data-orig-size=\"863,204\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"x-ty\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty.png?fit=660%2C156&amp;ssl=1\" class=\"aligncenter size-medium wp-image-27344\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty-500x118.png?resize=500%2C118&#038;ssl=1\" alt=\"\" width=\"500\" height=\"118\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty.png?resize=500%2C118&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty.png?resize=768%2C182&amp;ssl=1 768w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/x-ty.png?w=863&amp;ssl=1 863w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aDon\u2019t let &lt;X&gt;-ities go unchallenged. Clearly define and evaluate the Scenario\/Story\/Need\/Usage.<\/p><\/blockquote>\n<p><strong>In House \u201cInventions\u201d<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aReuse. Fork. Contribute. Reconsider.<\/p><\/blockquote>\n<p><strong>Following the Status Quo<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aRefactoring is part of each and every story. No code is untouchable<\/p><\/blockquote>\n<p><strong>Bad Estimation<\/strong><\/p>\n<blockquote><p>TL;DR\u200a\u2014\u200aBad Estimation destroys Quality even before a single line of code is written<\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>&#8220;Modern Software Over-Engineering Mistakes&#8221; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Modern Software Over-Engineering Mistakes #WebDev #business #engineering","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,18,62,1334],"tags":[1968,1673,1330],"keyring_services":[],"class_list":["post-27343","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-technology","category-web-work","tag-business","tag-software-engineering","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"&quot;Modern Software Over-Engineering Mistakes&quot; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here&#039;s the list of things discussed in the article with tl;dr (too long;\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"&quot;Modern Software Over-Engineering Mistakes&quot; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here&#039;s the list of things discussed in the article with tl;dr (too long;\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2017-02-12T17:39:08+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2017-02-12T17:39:08+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"&quot;Modern Software Over-Engineering Mistakes&quot; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here&#039;s the list of things discussed in the article with tl;dr (too long;\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#blogposting\",\"name\":\"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov\",\"headline\":\"Modern Software Over-Engineering Mistakes\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/wp-content\\\/uploads\\\/2017\\\/02\\\/perfect-abstraction-500x350.png\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#articleImage\"},\"datePublished\":\"2017-02-12T19:39:08+02:00\",\"dateModified\":\"2017-02-12T19:39:08+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#webpage\"},\"articleSection\":\"All, Programming, Technology, Web work, business, software engineering, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"position\":3,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#listItem\",\"name\":\"Modern Software Over-Engineering Mistakes\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#listItem\",\"position\":4,\"name\":\"Modern Software Over-Engineering Mistakes\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/\",\"name\":\"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov\",\"description\":\"\\\"Modern Software Over-Engineering Mistakes\\\" is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here's the list of things discussed in the article with tl;dr (too long;\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/02\\\/12\\\/modern-software-over-engineering-mistakes\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2017-02-12T19:39:08+02:00\",\"dateModified\":\"2017-02-12T19:39:08+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov","description":"\"Modern Software Over-Engineering Mistakes\" is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here's the list of things discussed in the article with tl;dr (too long;","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#blogposting","name":"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov","headline":"Modern Software Over-Engineering Mistakes","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/perfect-abstraction-500x350.png","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#articleImage"},"datePublished":"2017-02-12T19:39:08+02:00","dateModified":"2017-02-12T19:39:08+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#webpage"},"articleSection":"All, Programming, Technology, Web work, business, software engineering, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","position":3,"name":"Programming","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#listItem","name":"Modern Software Over-Engineering Mistakes"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#listItem","position":4,"name":"Modern Software Over-Engineering Mistakes","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/","name":"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov","description":"\"Modern Software Over-Engineering Mistakes\" is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here's the list of things discussed in the article with tl;dr (too long;","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2017-02-12T19:39:08+02:00","dateModified":"2017-02-12T19:39:08+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov","og:description":"&quot;Modern Software Over-Engineering Mistakes&quot; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here's the list of things discussed in the article with tl;dr (too long;","og:url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2017-02-12T17:39:08+00:00","article:modified_time":"2017-02-12T17:39:08+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"Modern Software Over-Engineering Mistakes - Leonid Mamchenkov","twitter:description":"&quot;Modern Software Over-Engineering Mistakes&quot; is a nice collection of examples, results and reviews of over-engineering mistakes of the modern day. Few things are guaranteed to increase all the time: Distance between stars, Entropy in the visible universe, and F*cking business requirements . Here's the list of things discussed in the article with tl;dr (too long;","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"27343","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-19 09:21:24","updated":"2026-01-15 12:44:46","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tModern Software Over-Engineering Mistakes\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Programming","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/"},{"label":"Modern Software Over-Engineering Mistakes","link":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/12\/modern-software-over-engineering-mistakes\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":28124,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/10\/20\/periodic-table-of-software-engineering\/","url_meta":{"origin":27343,"position":0},"title":"Periodic Table of Software Engineering","author":"Leonid Mamchenkov","date":"October 20, 2017","format":false,"excerpt":"I came across this Periodic Table of Software Engineering, and I think it's an excellent visualization.\u00a0 For those working their way to become software engineers, it provides a nice map of skills, topics, and knowledge areas to cover.\u00a0 For the rest, it clearly explains why software is so much more\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/10\/periodic-table-of-software-engineering-500x350.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27331,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/11\/software-engineering-at-google\/","url_meta":{"origin":27343,"position":1},"title":"Software Engineering at Google","author":"Leonid Mamchenkov","date":"February 11, 2017","format":false,"excerpt":"Fergus Henderson, who has been a software engineer at Google for 10 years, published the PDF document\u00a0entitled \"Software Engineering at Google\", where he collects and describes key software engineering practices the company is using. It covers the following: software development - version control, build system, code review, testing, bug tracking,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":8106,"url":"https:\/\/mamchenkov.net\/wordpress\/2004\/10\/25\/software-engineering-proverbs\/","url_meta":{"origin":27343,"position":2},"title":"Software Engineering Proverbs","author":"Leonid Mamchenkov","date":"October 25, 2004","format":false,"excerpt":"\"Software Engineering Proverbs\" collected by Tom Van Vleck is an excellent place to pick up a smart thought or two. Many of these are good for email signatures and stuff like that. Another point to note is that these do often apply to people other than software engineers too.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":42682,"url":"https:\/\/mamchenkov.net\/wordpress\/2019\/06\/05\/notes-to-myself-on-software-engineering\/","url_meta":{"origin":27343,"position":3},"title":"Notes to Myself on Software Engineering","author":"Leonid Mamchenkov","date":"June 5, 2019","format":false,"excerpt":"I came across these \"Notes to Myself on Software Engineering\", with which I agree wholeheartedly. Some of these I've learned \"the hard way\". For most of these, I wish I knew them earlier. They would make my life a lot easier. Here a few to get you started, but make\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":21431,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/04\/02\/why-is-software-engineering-exciting\/","url_meta":{"origin":27343,"position":4},"title":"Why is software engineering exciting?","author":"Leonid Mamchenkov","date":"April 2, 2014","format":false,"excerpt":"Quora runs the question. \u00a0There are some really inspiring and insightful replies. \u00a0Have a look. \u00a0Here are some bits to get you started. \u00a0Robert Love said: Software is the most malleable of media. With just bits\u2014which are nothing, really\u2014a software engineer can build castles out of thin air. Entire businesses,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":22162,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/07\/10\/the-architecture-of-open-source-applications\/","url_meta":{"origin":27343,"position":5},"title":"The Architecture of Open Source Applications","author":"Leonid Mamchenkov","date":"July 10, 2014","format":"link","excerpt":"The Architecture of Open Source Applications Architects look at thousands of buildings during their training, and study critiques of those buildings written by masters. In contrast, most software developers only ever get to know a handful of large programs well\u2014usually programs they wrote themselves\u2014and never study the great programs of\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/07\/posa-cover.png?resize=350%2C200","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/27343","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=27343"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/27343\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=27343"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=27343"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=27343"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=27343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}