{"id":1697,"date":"2015-04-02T23:08:07","date_gmt":"2015-04-03T04:08:07","guid":{"rendered":"http:\/\/redmonk.com\/dberkholz\/?p=1697"},"modified":"2015-04-05T09:39:31","modified_gmt":"2015-04-05T14:39:31","slug":"are-we-nearing-peak-fragmentation","status":"publish","type":"post","link":"https:\/\/redmonk.com\/dberkholz\/2015\/04\/02\/are-we-nearing-peak-fragmentation\/","title":{"rendered":"Are we nearing peak language fragmentation?"},"content":{"rendered":"<p>Thanks to the fine folks at Black Duck, I obtained a bolus of data from <a href=\"https:\/\/www.openhub.net\/\">Open Hub<\/a> (then Ohloh) on all of the open-source repositories they track over time. I&#8217;ve written <a href=\"http:\/\/redmonk.com\/dberkholz\/2013\/04\/22\/the-size-of-open-source-communities-and-its-impact-upon-activity-licensing-and-hosting\/\">previously<\/a> on this data, but this time I&#8217;m taking a different take and looking more deeply into fragmentation [writeups by my <a href=\"http:\/\/redmonk.com\/sogrady\/2014\/09\/04\/fragmentation-pendulum\/\">colleague<\/a> and <a href=\"http:\/\/redmonk.com\/dberkholz\/2014\/05\/20\/microservices-and-the-migrating-unix-philosophy\/\">me<\/a>]. Specifically, what&#8217;s possible with this data is to dig into how usage of programming languages has diversified over time. To wit, here&#8217;s a graph showing how language use has changed using snapshots every 2\u00bd years since 1995, plus a final more recent snapshot in <span style=\"color: #ff0000;\">red<\/span> (click to embiggen\/focus):<\/p>\n<p><a href=\"http:\/\/dberkholz-media.redmonk.com\/dberkholz\/files\/2015\/04\/pdf_committers_20131216.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1984\" data-permalink=\"https:\/\/redmonk.com\/dberkholz\/2015\/04\/02\/are-we-nearing-peak-fragmentation\/pdf_committers_20131216-2\/\" data-orig-file=\"https:\/\/redmonk.com\/dberkholz\/files\/2015\/04\/pdf_committers_20131216.png\" data-orig-size=\"439,367\" 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=\"pdf_committers_20131216\" data-image-description=\"\" data-medium-file=\"https:\/\/redmonk.com\/dberkholz\/files\/2015\/04\/pdf_committers_20131216-300x251.png\" data-large-file=\"https:\/\/redmonk.com\/dberkholz\/files\/2015\/04\/pdf_committers_20131216.png\" class=\"aligncenter wp-image-1984\" src=\"http:\/\/dberkholz-media.redmonk.com\/dberkholz\/files\/2015\/04\/pdf_committers_20131216.png\" alt=\"pdf_committers_20131216\" width=\"300\" height=\"251\" \/><\/a><\/p>\n<p>On the vertical axis is the share for a given language, and on the horizontal axis is that language&#8217;s rank, or popularity. From looking at this data, you can see that the #1 most popular language had roughly 30% market share in 1995 but that gradually declined over the past 20 years to roughly 10% today.<\/p>\n<p>Perhaps the most interesting aspect of this data is that the decline appears to be <strong>slowing<\/strong>. Every 2\u00bd years, the share decreases a little bit less, particularly in contrast to the enormous shifts in the &#8217;90s and early &#8217;00s. This suggests that we may be nearing peak fragmentation for programming languages, with the potential of a <a href=\"http:\/\/redmonk.com\/sogrady\/2014\/09\/04\/fragmentation-pendulum\/\">backswing<\/a>.<\/p>\n<p>One last note is that the mid-tier languages (around ranks 5\u201315) appear to be defragmenting over time. In other words, while the top 5 are spreading out, the next 10 appear to be congealing, with the lower-ranked languages in that range losing popularity.<\/p>\n<p><span style=\"color: #999999;\"><em><strong>Disclosures<\/strong>: Black Duck has been a client.<\/em><\/span><\/p>\n<div class=\"acc_license\"><a href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\"><img decoding=\"async\" src=\"http:\/\/i.creativecommons.org\/l\/by-sa\/3.0\/88x31.png\" alt=\"by-sa\" \/><\/a><\/div><!--<rdf:RDF xmlns=\"http:\/\/creativecommons.org\/ns#\" xmlns:dc=\"http:\/\/purl.org\/dc\/elements\/1.1\/\" xmlns:rdf=\"http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#\"><Work rdf:about=\"\"><license rdf:resource=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\" \/><\/Work><License rdf:about=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\"><requires rdf:resource=\"http:\/\/creativecommons.org\/ns#Attribution\" \/><permits rdf:resource=\"http:\/\/creativecommons.org\/ns#Reproduction\" \/><permits rdf:resource=\"http:\/\/creativecommons.org\/ns#Distribution\" \/><permits rdf:resource=\"http:\/\/creativecommons.org\/ns#DerivativeWorks\" \/><requires rdf:resource=\"http:\/\/creativecommons.org\/ns#ShareAlike\" \/><requires rdf:resource=\"http:\/\/creativecommons.org\/ns#Notice\" \/><\/License><\/rdf:RDF>-->","protected":false},"excerpt":{"rendered":"<p>Thanks to the fine folks at Black Duck, I obtained a bolus of data from Open Hub (then Ohloh) on all of the open-source repositories they track over time. I&#8217;ve written previously on this data, but this time I&#8217;m taking a different take and looking more deeply into fragmentation [writeups by my colleague and me].<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[30],"tags":[],"class_list":["post-1697","post","type-post","status-publish","format-standard","hentry","category-programming-languages"],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p23Tsn-rn","_links":{"self":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/posts\/1697","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/comments?post=1697"}],"version-history":[{"count":0,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/posts\/1697\/revisions"}],"wp:attachment":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/media?parent=1697"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/categories?post=1697"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/tags?post=1697"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}