{"id":26955,"date":"2016-11-25T00:24:13","date_gmt":"2016-11-24T22:24:13","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=26955"},"modified":"2016-11-25T00:24:13","modified_gmt":"2016-11-24T22:24:13","slug":"never-judge-a-programmer-by-their-commit-history","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/","title":{"rendered":"Never judge a programmer by their commit history"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>In a <a href=\"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/24\/slashdot-asks-are-you-ashamed-of-your-code\/#comment-245933\">comment to another post<\/a>, <a href=\"http:\/\/anvyst.com\/\">Andrey<\/a> sent in a link to <a href=\"http:\/\/www.mehdi-khalili.com\/never-judge-a-programmer-by-their-commit-history\/\">this blog post<\/a>, titled &#8220;Never judge a programmer by their commit history&#8221;. \u00a0It&#8217;s very similar to something that I wanted to write for quite some time now.<\/p>\n<blockquote><p>It\u2019s been a very long time since I judged any programmer based on their commit history and I believe if you think you can judge a programmer\u2019s ability by reading his\/her code YOU ARE WRONG.<\/p><\/blockquote>\n<p>As technical folk, we are often fast to judge an implementation purely on its technical merits, forgetting, that there are other factors often at play. \u00a0Mehdi Khalili, the author of the post, goes over just some of them, including:<\/p>\n<ul>\n<li>Abiding by bad coding standards<\/li>\n<li>Bad leader and project manager<\/li>\n<li>Junior devs<\/li>\n<li>Business reality<\/li>\n<li>Brain fart<\/li>\n<li>Personal issues<\/li>\n<li>Synergy or lack thereof<\/li>\n<li>Physical issues (which is similar to the Personal issues above)<\/li>\n<li>Imposters! (which is funny and, something I didn&#8217;t think about)<\/li>\n<\/ul>\n<p>I&#8217;ve seen (and done) almost all of these. \u00a0Business reality and junior devs are the two I&#8217;ve come across the most.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>In a comment to another post, Andrey sent in a link to this blog post, titled &#8220;Never judge a programmer by their commit history&#8221;. \u00a0It&#8217;s very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Never judge a programmer by their commit history<\/span><\/a><\/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":"Never judge a programmer by their commit history #programming #productivity #WebDev","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,133,62],"tags":[1079,3074,1330],"keyring_services":[],"class_list":["post-26955","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-sysadmin","category-technology","tag-productivity","tag-quality-assurance","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"In a comment to another post, Andrey sent in a link to this blog post, titled &quot;Never judge a programmer by their commit history&quot;. It&#039;s very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history\" \/>\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\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\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=\"Never judge a programmer by their commit history - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"In a comment to another post, Andrey sent in a link to this blog post, titled &quot;Never judge a programmer by their commit history&quot;. It&#039;s very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/\" \/>\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=\"2016-11-24T22:24:13+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2016-11-24T22:24:13+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=\"Never judge a programmer by their commit history - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"In a comment to another post, Andrey sent in a link to this blog post, titled &quot;Never judge a programmer by their commit history&quot;. It&#039;s very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history\" \/>\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\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#blogposting\",\"name\":\"Never judge a programmer by their commit history - Leonid Mamchenkov\",\"headline\":\"Never judge a programmer by their commit history\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"},\"datePublished\":\"2016-11-25T00:24:13+02:00\",\"dateModified\":\"2016-11-25T00:24:13+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#webpage\"},\"articleSection\":\"All, Programming, Sysadmin, Technology, productivity, quality assurance, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#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\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#listItem\",\"name\":\"Never judge a programmer by their commit history\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#listItem\",\"position\":4,\"name\":\"Never judge a programmer by their commit history\",\"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\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#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\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#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\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/\",\"name\":\"Never judge a programmer by their commit history - Leonid Mamchenkov\",\"description\":\"In a comment to another post, Andrey sent in a link to this blog post, titled \\\"Never judge a programmer by their commit history\\\". It's very similar to something that I wanted to write for quite some time now. It\\u2019s been a very long time since I judged any programmer based on their commit history\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/11\\\/25\\\/never-judge-a-programmer-by-their-commit-history\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2016-11-25T00:24:13+02:00\",\"dateModified\":\"2016-11-25T00:24:13+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":"Never judge a programmer by their commit history - Leonid Mamchenkov","description":"In a comment to another post, Andrey sent in a link to this blog post, titled \"Never judge a programmer by their commit history\". It's very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/","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\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#blogposting","name":"Never judge a programmer by their commit history - Leonid Mamchenkov","headline":"Never judge a programmer by their commit history","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"},"datePublished":"2016-11-25T00:24:13+02:00","dateModified":"2016-11-25T00:24:13+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#webpage"},"articleSection":"All, Programming, Sysadmin, Technology, productivity, quality assurance, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#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\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#listItem","name":"Never judge a programmer by their commit history"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#listItem","position":4,"name":"Never judge a programmer by their commit history","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\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#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\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#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\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/","name":"Never judge a programmer by their commit history - Leonid Mamchenkov","description":"In a comment to another post, Andrey sent in a link to this blog post, titled \"Never judge a programmer by their commit history\". It's very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2016-11-25T00:24:13+02:00","dateModified":"2016-11-25T00:24:13+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":"Never judge a programmer by their commit history - Leonid Mamchenkov","og:description":"In a comment to another post, Andrey sent in a link to this blog post, titled &quot;Never judge a programmer by their commit history&quot;. It's very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history","og:url":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/","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":"2016-11-24T22:24:13+00:00","article:modified_time":"2016-11-24T22:24:13+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"Never judge a programmer by their commit history - Leonid Mamchenkov","twitter:description":"In a comment to another post, Andrey sent in a link to this blog post, titled &quot;Never judge a programmer by their commit history&quot;. It's very similar to something that I wanted to write for quite some time now. It\u2019s been a very long time since I judged any programmer based on their commit history","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"26955","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":"","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-20 04:09:37","updated":"2026-01-15 12:27:53","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\tNever judge a programmer by their commit history\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":"Never judge a programmer by their commit history","link":"https:\/\/mamchenkov.net\/wordpress\/2016\/11\/25\/never-judge-a-programmer-by-their-commit-history\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":26317,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/08\/08\/classic-programmer-paintings\/","url_meta":{"origin":26955,"position":0},"title":"Classic Programmer Paintings","author":"Leonid Mamchenkov","date":"August 8, 2016","format":false,"excerpt":"Classic Programmer Paintings is a hilarious resource with classic paintings featured with modern captions from the programming world. Well worth adding the RSS feed to your geek humor collection... Found via\u00a0Andrey Vystavkin.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"\"Gentle technical discussion on IRC channel\", Francisco Goya, Oil on canvas, 1814","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/08\/technical-discussion-500x387.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":29150,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/12\/28\/programmer-playing-cards\/","url_meta":{"origin":26955,"position":1},"title":"Programmer Playing Cards","author":"Leonid Mamchenkov","date":"December 28, 2018","format":false,"excerpt":"I have recently blogged about the Faces of Open Source project. That's a great initiative. But here's another one, with a lot more practical approach - Programmer Playing Cards. It is a deck of playing cards, featuring people who influenced the world of computer programming in a variety of ways.\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\/2018\/12\/Larry-Wall-cards.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/Larry-Wall-cards.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/Larry-Wall-cards.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/Larry-Wall-cards.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":40866,"url":"https:\/\/mamchenkov.net\/wordpress\/2019\/03\/29\/programmer-migration-patterns\/","url_meta":{"origin":26955,"position":2},"title":"Programmer migration patterns","author":"Leonid Mamchenkov","date":"March 29, 2019","format":false,"excerpt":"\"Programmer migration patterns\" is an interesting attempt to identify where programmers start and how move from one programming language to another. This is not precise science, obviously. But I have to say that I mostly agree with the findings. The first language that I learned (back in school) was BASIC,\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\/2019\/03\/programmer-migration-pattern.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27162,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/12\/22\/signs-that-youre-a-bad-programmer\/","url_meta":{"origin":26955,"position":3},"title":"Signs that you&#8217;re a bad programmer","author":"Leonid Mamchenkov","date":"December 22, 2016","format":false,"excerpt":"Software Engineering Tips shares some tips on how to figure out if you are a bad programmer, and how to remedy that. Signs that you're a bad programmer Inability to reason about code Poor understanding of the language's programming model Deficient research skills \/ Chronically poor knowledge of the platform's\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":27980,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/09\/09\/every-programmer-should-know\/","url_meta":{"origin":26955,"position":4},"title":"Every Programmer Should Know","author":"Leonid Mamchenkov","date":"September 9, 2017","format":false,"excerpt":"\"Every Programmer Should Know\" is a collection of subjects and resources that every programmer should know. \u00a0It is not specific to any technology stack, and it's rich enough to offer something to programmer of any level or experience. While the whole list is great, I'll single out this Big O\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\/09\/big-o-500x353.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27362,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/19\/programmer-interrupted\/","url_meta":{"origin":26955,"position":5},"title":"Programmer Interrupted","author":"Leonid Mamchenkov","date":"February 19, 2017","format":false,"excerpt":"Slashdot runs a thread on \"Are Remote Software Teams More Productive?\". \u00a0The original post links to a few research references that, unsurprisingly, show how expensive interruptions are to programmers, and how unprepared we are, as an industry, to deal with this problem. \u00a0I particularly liked a rather in-depth look at\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":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/26955","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=26955"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/26955\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=26955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=26955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=26955"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=26955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}