<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Black Duck Open Hub Blog</title>
	
	<link>http://blog.openhub.net</link>
	<description>Open Hub, Blog, Documentation, Info</description>
	<lastBuildDate>Fri, 03 Mar 2017 10:34:21 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.6.1</generator>

<image>
	<url>http://blog.openhub.net/wp-content/uploads/2014/07/OH_logo-e1406051343599.png</url>
	<title>Black Duck Open Hub Blog</title>
	<link>http://blog.openhub.net</link>
	<width>32</width>
	<height>32</height>
</image> 
	<feedburner:info uri="ohlohmeta" /><feedburner:emailServiceId>OhlohMeta</feedburner:emailServiceId><feedburner:feedburnerHostname>https://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/openhubblog" /><feedburner:info uri="openhubblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
		<title>That was not fun</title>
		<link>http://blog.openhub.net/2017/03/that-was-not-fun/</link>
		<comments>http://blog.openhub.net/2017/03/that-was-not-fun/#respond</comments>
		<pubDate>Fri, 03 Mar 2017 10:34:21 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3371</guid>
		<description><![CDATA[The Open Hub is up and running again after a full day of being unavailable. We apologize for any inconvenience this unexpected downtime caused and want to share what we know about what happened. In brief; while performing a minor &#8230; <a href="http://blog.openhub.net/2017/03/that-was-not-fun/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>The Open Hub is up and running again after a full day of being unavailable. We apologize for any inconvenience this unexpected downtime caused and want to share what we know about what happened.</p>
<p>In brief; while performing a minor version upgrade of our PostgreSQL database from version 9.4 to 9.6, the upgrade process had a catastrophic failure and we lost the entire database.</p>
<p>Fortunately, we had made a backup before starting the process, and were able to restore from it. However, we did loose a few days of data and changes.  For that we are truly sorry.</p>
<p>We&#8217;ve done these upgrades before. As a general rule, we don&#8217;t like to get more than 2 minor revisions behind in anything in our stack. So, we planned for the upgrade, tested it rigorously in our staging environment, carefully documented each step and command that would need to be executed. Normally we would only do this kind of work on a Sunday morning, when the Open Hub has the least amount of traffic.</p>
<p>The decision to proceed with the upgrade rests entirely with me as team lead.</p>
<p>We expected a 20 minute upgrade process, followed by an Analyze to generate the necessary statistics which could have taken up to an hour.  We figured the site would be back up in less than 2 hours.</p>
<p>But very early in the process, one of the first pg_upgrade statements generated an error because the target data directory was erroneously entered as the mount point, owned by root, instead of a subdirectory owned by postgres.  This should have simply generated the error, we would have fixed the command and continued on our way.</p>
<p>However, when we checked file systems, it was immediately apparent that the data directory in the original 9.4 location was completely gone, along with all our data. We&#8217;ve scoured the history files and the logs to see if there was anything else that could have been a factor, but do not see anything else.  We have even read the source code of the pg_upgrade feature (available at https://doxygen.postgresql.org/pg__upgrade_8c.html#a3c04138a5bfe5d72780bb7e82a18e627).</p>
<p>We are now looking over the entire site and getting updates we know we&#8217;ve made since the database backup re-implemented.  Please don&#8217;t hesitate to ping us on Twitter at @bdopenhub, or contact us at info@openhub.net with any observations, insults, questions, or comments, etc.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2017/03/that-was-not-fun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Hub in 2017</title>
		<link>http://blog.openhub.net/2017/01/open-hub-in-2017/</link>
		<comments>http://blog.openhub.net/2017/01/open-hub-in-2017/#comments</comments>
		<pubDate>Tue, 17 Jan 2017 21:02:01 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3326</guid>
		<description><![CDATA[Hail Hubbites! We&#8217;d love to share some of the things that have been going on and will be going on here in Open Hub Land. We accomplished some very significant work in 2016 and would like to take a moment &#8230; <a href="http://blog.openhub.net/2017/01/open-hub-in-2017/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Hail Hubbites!</p>
<p>We&#8217;d love to share some of the things that have been going on and will be going on here in Open Hub Land. We accomplished some very significant work in 2016 and would like to take a moment to lay it out and then talk about what we&#8217;d like to accomplish in 2017.</p>
<h2>2016 Review</h2>
<p>Please recall from our <a href="http://blog.openhub.net/2016/04/open-hub-in-2016/">2016 Review</a> what we did in 2015: rebuilt the UI, addressed spam account creation, improved back-end performance (5X in some cases), started inventing new security data features. The plan for 2016 was to create a new Project Vulnerability Report and Project Security Pages, run the Spammer Cleanup Program, virtualize the back end (the FISbot project), switch to Ohcount4J, connect to other sites related to OSS.  Here&#8217;s how we did:</p>
<ul>
<li>Invented the <a href="http://blog.openhub.net/about-pvr/">Project Vulnerability Report</a> algorithms and presentations</li>
<li>Prototyped Project Security Pages with the (now closed) security.openhub.net pages</li>
<li>Deployed FISbots and Ohloh Analysis onto virtual servers (this involved migration some 10TB of OSS project data from multiple servers to a single SAN)</li>
<li>Started running batches of accounts through the Spammer Cleanup Program.  To date, we&#8217;ve cleared out some 350,000 spam accounts (YAY!!)</li>
<li>Design and implemented a Prototype Project Security Page to report known vulnerabilities in OSS projects.  Collected user feedback from that experiment</li>
<li>Explored using Ohcount4J instead of Ohcount.  Decided to stay with Ohcount.</li>
<li>Added a feature to add an entire GitHub account to a single Open Hub project</li>
<li>Numerous back end improvements and defect resolutions to consistently delivery web pages under 200 ms (6X faster than 2015 on average)</li>
<li>Defended against a number of malicious attacks against our API service and web site (comes with the territory of running a non-trivial web application, amirite?)</li>
</ul>
<p>There&#8217;s more though!</p>
<p>The FISbot was implemented as a stop gap measure to address issues we had with the back end bare metal crawlers. We were waiting for another project to provide a central set of Fetch, Import, and SLOC services to the Black Duck enterprise. The plan was to shut down the FISbots and use this other service.  However, after deploying our FISbots, it was decided that we should expand the FISbot to handle the additional enterprise scenarios.  So, completely unplanned at the beginning of the year, we implemented the eFISbot Project, which we also delivered last year.</p>
<p>Last point: as we talked about in <a href="http://blog.openhub.net/2016/07/details-on-the-infrastructure/">Detail on the Infrastructure</a> post, the migration of that 10TB collection of OSS project data onto the production server ran into serious issues that forced us to re-fetch every one of the nearly 600K code locations we monitor.  This was a serious multi-month disruption, from which we have mostly entirely recovered.  We have re-fetched all the repositories, but there are lingering issues in getting all those repositories and corresponding projects refreshed in the 24 &#8211; 72 hour window we&#8217;ve set for ourselves.</p>
<p>So, in summary, we&#8217;ll add to our 2016 Review:</p>
<ul>
<li>Implemented and delivered eFISbot</li>
<li>Survived the treacherous NFS SNAFU and the Great Code Location ReFetch</li>
</ul>
<p>I feel it is also important that we mention again the passing of our friend and colleague Pugalraj Inbasekaran in February. I still feel his absence as an ache near my heart and miss him.</p>
<h2>2017 Plan</h2>
<p>We have a few main focuses for 2017</p>
<ol>
<li>Make the back end screamingly fast</li>
<li>Make it wicked easy to add projects from GitHub to the Open Hub and get data from the Open Hub into your GitHub pages</li>
<li>Continue the UI update with wider pages and more responsive layouts</li>
<li>Add new languages to Ohcount</li>
</ol>
<p>For that back end, we&#8217;ve been given permission to obtain a new set of servers.  Currently, the Open Hub runs off a single database (we&#8217;ve talked <a href="http://blog.openhub.net/2015/09/why-do-we-ask-for-your-phone-number/">about</a> <a href="http://blog.openhub.net/2015/10/github-performance-and-crawlers-oh-my/">that</a> <a href="http://blog.openhub.net/2015/10/were-a-bit-behind/">over</a> and <a href="http://blog.openhub.net/2016/04/open-hub-in-2016/">over</a> <a href="http://blog.openhub.net/2016/06/hey-hey-hey-whats-happening-today/">again</a>).  We&#8217;ve put in a purchase request for 2 database servers that have over 4X the CPU cores and 9X the RAM. One server will be the master and the other the replicate. These servers will support only Fetch, Import, SLOC and Analysis operations (write intensive) so, we&#8217;re calling this the FISA DB.  The current database will remain with the purpose of only presenting generated analysis (read intensive) through the Ohloh-UI application, so that will be the UI DB.  We are SO VERY EXCITED!!! SQUEEEEEE!!! Ah. Sorry; sorry. Please excuse the author (but it&#8217;s SOO exciting!)</p>
<p>As always, thank you so very much for being part of the Open Source Software community and your continued support of the Open Hub.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2017/01/open-hub-in-2017/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>It’s Time to Select Our 2016 Open Source Rookies</title>
		<link>http://blog.openhub.net/2016/12/its-time-to-select-our-2016-open-source-rookies/</link>
		<comments>http://blog.openhub.net/2016/12/its-time-to-select-our-2016-open-source-rookies/#respond</comments>
		<pubDate>Fri, 09 Dec 2016 16:01:50 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3304</guid>
		<description><![CDATA[Looking forward to this year’s Rookies and looking back at Rookies past This time of year is one of great anticipation at Black Duck. We are eagerly anticipating a very special delivery. A crew of helpers is busy putting together &#8230; <a href="http://blog.openhub.net/2016/12/its-time-to-select-our-2016-open-source-rookies/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter wp-image-3305" src="http://blog.openhub.net/wp-content/uploads/2016/12/RookiesBlog1-1024x213.png" alt="rookiesblog1" width="650" height="135" srcset="http://blog.openhub.net/wp-content/uploads/2016/12/RookiesBlog1-1024x213.png 1024w, http://blog.openhub.net/wp-content/uploads/2016/12/RookiesBlog1-300x63.png 300w, http://blog.openhub.net/wp-content/uploads/2016/12/RookiesBlog1-768x160.png 768w, http://blog.openhub.net/wp-content/uploads/2016/12/RookiesBlog1.png 1200w" sizes="(max-width: 650px) 100vw, 650px" /></p>
<h3>Looking forward to this year’s Rookies and looking back at Rookies past</h3>
<p>This time of year is one of great anticipation at Black Duck. We are eagerly anticipating a very special delivery. A crew of helpers is busy putting together a list. It will be thoroughly checked and even checked twice. I wouldn’t say any on this list are naughty – in fact, most are pretty good. But we’re looking for the ones that are really <i>really</i> nice.</p>
<p>I’m speaking, of course, about the candidate list for the Black Duck 2016 Open Source Rookies. Each year, we review the open source projects started during the last 12 months and recognize those that stand out because of their mission, community growth, and market impact. A lot of great software is being built using Open Source, as was demonstrated by the <a href="http://www.blackducksoftware.com/rookies" target="_blank">2015 Open Source Rookie Class</a>, and we’re looking forward to our review of this year’s candidates.</p>
<h2>You Can’t Win if You Don’t Enter</h2>
<p>I’ve previously written about <a href="http://blog.blackducksoftware.com/recognizing-this-years-open-source-rookies" target="_blank">how we select the Open Source Rookies</a> so I won’t go in to detail about it here. Suffice to say that it’s a thorough process that starts when we pull data from our open source project database, <a href="https://www.openhub.net/" target="_blank">OpenHub</a>. OpenHub allows open source project contributors and teams to aggregate data about their projects and communities. While this is not the only data source we use, the information in it helps us get a more complete picture of what’s happening with each project.</p>
<p>Here’s where you come in. Remember that Christmas when you didn’t write to Santa and instead of getting that cool new video game you got socks? This is kind of like that. If you participate in or know of a new open source project that deserves a place in the 2016 Open Source Rookies, it will significantly improve the project’s chances of being selected if it has been <a href="https://www.openhub.net/p/new" target="_blank">registered in OpenHub</a> by December 15th.</p>
<p><a href="https://www.openhub.net/p/new"><img class="aligncenter wp-image-3317 size-full" src="http://blog.openhub.net/wp-content/uploads/2016/12/Rookies-CTA2.jpg" alt="rookies-cta2" width="650" height="200" srcset="http://blog.openhub.net/wp-content/uploads/2016/12/Rookies-CTA2.jpg 650w, http://blog.openhub.net/wp-content/uploads/2016/12/Rookies-CTA2-300x92.jpg 300w" sizes="(max-width: 650px) 100vw, 650px" /></a></p>
<h2>A Look Back at Prior Rookies</h2>
<p>This will be the 9th year for Open Source Rookies and a quick look back shows you just how ambitious open source projects are, and how mainstream they have become. Of course, we’d like to think that these projects were helped, at least a little, by having been recognized as Back Duck Open Source Rookies. <img src="https://s.w.org/images/core/emoji/2/72x72/1f642.png" alt="&#x1f642;" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<h3>Hashicorp Vault – Class of 2015<img class="size-full wp-image-3307 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/hashicorp.png" alt="hashicorp" width="102" height="109" /></h3>
<h4>Rising Star with Open Source in its DNA</h4>
<p><a href="https://www.hashicorp.com/" target="_blank" rel="nofollow">https://www.hashicorp.com/</a><br />
We recognized <a href="https://www.hashicorp.com/" target="_blank" rel="nofollow">Hashicorp</a> last year for the launch of <a href="https://info.blackducksoftware.com/OpenSourceRookies2015.html" target="_blank">Vault</a>, a framework for securely storing, accessing, and managing secrets across an enterprise, but most people probably know them as the team behind the popular development environment management solution, <a href="https://www.vagrantup.com/" target="_blank" rel="nofollow">Vagrant</a>. 2016 has been a good year for Hashicorp, who in September announced a $24 million series B funding round led by GCV Capital and Mayfield fund. We’ll be watching for more news from them in 2017.</p>
<h3>Kubernetes – Class of 2014<img class="size-full wp-image-3308 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/kubernetes.png" alt="kubernetes" width="102" height="99" /></h3>
<h4>Container Orchestration at Scale</h4>
<p><a href="http://kubernetes.io/" target="_blank" rel="nofollow">http://kubernetes.io/</a></p>
<p>Google has been using containers for years to develop its current scale of technologies. At the summer 2014 DockerCon, the Internet giant open sourced a container management tool, <a href="http://kubernetes.io/" target="_blank" rel="nofollow">Kubernetes</a>, that was developed specifically to meet the needs of the exponentially growing Docker ecosystem. Since then use and development of Kubernetes has flourished and it has become the one of the most widely adopted orchestration solutions for management of large scale container-based deployments.</p>
<h3>Docker – Class of 2013<img class="size-full wp-image-3309 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/Docker.png" alt="docker" width="104" height="85" /></h3>
<h4>Has raised over $180M in venture funding</h4>
<p><a href="https://www.docker.com/" target="“_blank”">https://www.docker.com/</a></p>
<p>Docker was a clear stand-out for us back in 2013. Few projects outside the highly corporate-sponsored arena garner the level of excitement and attention that Docker did. While Docker was started by a small, commercial firm previously known as dotCloud, it quickly caused industry heavy hitters like RedHat and Google to take notice.  Docker has revolutionized the way teams build scalable applications for the cloud. Since launch, Docker has raised an impressive $180M in venture funding. Many expect them to reach unicorn status if they go public.</p>
<h3>Ansible – Class of 2012<img class="size-full wp-image-3310 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/Ansible.png" alt="ansible" width="140" height="140" /></h3>
<h4>Acquired by Red Hat in October 2015</h4>
<p><a href="https://www.ansible.com/" target="_blank" rel="nofollow">https://www.ansible.com/</a></p>
<p>Managing a large number of servers on site or in the cloud can be a complex, time-consuming task, but Michael DeHaan, founder of Ansible, didn’t think it had to be that way.</p>
<p>“System managers shouldn’t have to worry about lots of complicated syntax,” he said. With a simpler approach to system orchestration, part-time sys-admins can do what they need to do, getting in and out quickly. Apparently Red Hat agreed and acquired Ansible in October of 2015.</p>
<h3>Bootstrap – Class of 2011<img class="size-full wp-image-3311 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/Bootstrap.png" alt="bootstrap" width="121" height="101" /></h3>
<h4>Ubiquitous toolkit for responsive websites</h4>
<p><a href="http://getbootstrap.com/" target="_blank" rel="nofollow">http://getbootstrap.com/</a></p>
<p>Do you remember the dark days when most websites were designed and built to look great on a desktop monitor, but many of them were practically unusable if viewed on the small screen of a tablet or mobile phone? Mobile visitors now account for the majority of traffic on many websites so it’s important that your website be “responsive,” adapting to the different screen sizes while remaining usable and engaging. <a href="http://twitter.github.com/bootstrap" target="_blank" rel="nofollow">Bootstrap</a>, a toolkit originated by Twitter, has become the foundation of many responsive websites, with base CSS and HTML for typography, forms, buttons, tables, grids, navigation and more.</p>
<h3>NuGet – Class of 2011<img class="size-full wp-image-3312 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/NuGet.png" alt="nuget" width="121" height="139" /></h3>
<h4>Universal package manager for .NET development</h4>
<p><a href="https://www.nuget.org/" target="_blank" rel="nofollow">https://www.nuget.org/</a></p>
<p>NuGet is a free, open source developer-focused package management system for the .NET platform designed to simplify the process of incorporating third party libraries into a .NET application during development. Originally developed by developers from Microsoft and the .NET Foundation, it should come as no surprise that it has become a standard component of the development platform in many Windows-based software development environments.NuGet is now pre-installed as part of current versions of Microsoft Visual Studio.</p>
<h3>OpenStack – Class of 2010<img class="size-full wp-image-3314 alignright" src="http://blog.openhub.net/wp-content/uploads/2016/12/OpenStack.png" alt="openstack" width="115" height="107" /></h3>
<h4>Orchestration Framework for the World’s Largest Clouds</h4>
<p><a href="https://www.openstack.org/" target="_blank" rel="nofollow">https://www.openstack.org/</a></p>
<p>Originally developed as a collaboration between RackSpace Hosting and NASA, OpenStack is an open source, open standards platform for large scale cloud computing. Since 2010, OpenStack has grown tremendously and gained active support from over 500 companies, including industry giants like Oracle, HP, and Cisco. Many of the world’s largest clouds are build using OpenStack. If you use any cloud-based applications or services, it’s almost certain that some of them are running on OpenStack.</p>
<p>By any measure, that&#8217;s a pretty impressive list. Are there any projects launching this year that will have a similar impact on the software development industry? History suggests yes, and maybe it’s a project you are working on? If so, make sure it gets noticed by <a href="https://www.openhub.net/p/new" target="_blank">registering it on OpenHub</a>. Maybe you too can join this illustrious group of Rookies turned All Stars!</p>
<p><a href="https://www.openhub.net/p/new"><img class="aligncenter wp-image-3317 size-full" src="http://blog.openhub.net/wp-content/uploads/2016/12/Rookies-CTA2.jpg" alt="rookies-cta2" width="650" height="200" srcset="http://blog.openhub.net/wp-content/uploads/2016/12/Rookies-CTA2.jpg 650w, http://blog.openhub.net/wp-content/uploads/2016/12/Rookies-CTA2-300x92.jpg 300w" sizes="(max-width: 650px) 100vw, 650px" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/12/its-time-to-select-our-2016-open-source-rookies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Project Security</title>
		<link>http://blog.openhub.net/2016/10/project-security/</link>
		<comments>http://blog.openhub.net/2016/10/project-security/#comments</comments>
		<pubDate>Tue, 04 Oct 2016 18:56:48 +0000</pubDate>
		<dc:creator><![CDATA[Lucy Wilcox]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3266</guid>
		<description><![CDATA[Hi Everyone! As we talked about in our post on the Open Hub in 2016,  we are adding even more project security information to Open Hub projects. Not only this, but the project pages have also been widened! All new pages &#8230; <a href="http://blog.openhub.net/2016/10/project-security/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><span style="font-weight: 400;">Hi Everyone! As we talked about in our post on the <a href="http://blog.openhub.net/2016/04/open-hub-in-2016/">Open Hub in 2016</a>,  we </span><span style="font-weight: 400;">are adding even more project security information to Open Hub projects. Not only this, but the project pages have also been widened! All new pages added to the Open Hub will be take up the entire screen width and other the other pages will be updated over time.</span></p>
<p><span style="font-weight: 400;">You’ll find all the same content on the project pages, but now there is a project security row for project that have had vulnerabilities reported against them. Remember, if a project has vulnerabilities that is not strictly a bad thing, it means that the open source community is doing a good job of finding and fixing security flaws. </span></p>
<p><span style="font-weight: 400;">In order to help you assess if security vulnerabilities are affecting a version of a project you are using, reported issues in the ten most recent versions are now shown on project pages. To see vulnerabilities in previous versions and information on exactly which vulnerabilities are present click into the Vulnerabilities per Version or Project Vulnerability Report header. This will take you to a page with more detail on each version with descriptions of each vulnerability and links to the National Vulnerability Database (</span><a href="https://nvd.nist.gov/"><span style="font-weight: 400;">https://nvd.nist.gov/</span></a><span style="font-weight: 400;">), where the vulnerabilities we display are publicly available. When an Open Hub project has no security material on the page it means that the have been no vulnerabilities reported against it in the NVD.</span></p>
<p><span style="font-weight: 400;">Keep in mind that there may be vulnerabilities in projects which have not been found, or have not been reported in the NVD yet.This is especially pertinent for recent versions as contributors are actively in the process of finding and reporting issues. Vulnerabilities can be found at any point and sometimes live within code long before they are found. At Black Duck we collect a comprehensive vulnerability set from several additional data sources, however, only publicly accessible vulnerabilities are posted on the Open Hub. If you want to scan some of your code against Black Duck&#8217;s full vulnerability database you can do that through our <a href="https://info.blackducksoftware.com/Security-Checker.html">Security Checker</a>. </span></p>
<p><span style="font-weight: 400;">We have also revamped the Project Vulnerability Report, more on this <a href="http://blog.openhub.net/about-pvr/">here</a>. </span></p>
<p><span style="font-weight: 400;">Lastly the now each of the project pages has a new Did You Know section that we hope highlights different features on the Open Hub that you might find useful and more context for OSS security.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/10/project-security/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Update: We’re doing it!</title>
		<link>http://blog.openhub.net/2016/09/update-were-doing-it/</link>
		<comments>http://blog.openhub.net/2016/09/update-were-doing-it/#comments</comments>
		<pubDate>Wed, 21 Sep 2016 17:53:47 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3281</guid>
		<description><![CDATA[Back-End Background Here&#8217;s a quick summary of the issue about which we will be talking: In mid-June, we moved off our bare-metal back-end crawlers into a virtualized environment. There were reasonable drivers and pressures pushing us to do this quickly and &#8230; <a href="http://blog.openhub.net/2016/09/update-were-doing-it/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h1>Back-End Background</h1>
<p>Here&#8217;s a quick summary of the issue about which we will be talking:</p>
<p>In mid-June, <a href="http://blog.openhub.net/2016/06/stepping-forward-and-back/">we moved off our bare-metal back-end crawlers</a> into a virtualized environment. There were reasonable drivers and pressures pushing us to do this quickly and we found, about two weeks after the irreversible migration, that there were <a href="http://blog.openhub.net/2016/07/details-on-the-infrastructure/">fundamental problems with the SAN storage</a> that were unrepairable. Not only was this SAN unusable, it had caused an irrevocable loss of data quality in <span style="text-decoration: underline;">all</span> of our repositories.</p>
<p>So we found a back-up for our back-end that would work and started the process of <a href="http://blog.openhub.net/2016/07/were-doing-it/">refetching all our repositories</a>.</p>
<h1>How Big is Big?</h1>
<p>Just what does it really mean, this &#8220;refetching all our repositories&#8221; thing? The Open Hub is organized around <a href="https://www.openhub.net/explore/projects">projects</a>. Each project may have zero or more enlistments, which is a mapping of a project to a code location. A code location may belong to more than one project. We currently have 675K projects on the Open Hub, of which 495K have enlistments. Those enlistments are comprised of 594K distinct code locations. Each of those code locations is what we mean we we talk about &#8220;repositories&#8221;: we have to re-fetch nearly 600K repositories from literally hundreds, if not thousands, of different servers.</p>
<p>We started with the most popular projects, which also tend to be some of the largest and most complex. We had to delete all the old job records and clear out a number of related data elements and schedule new Complete Jobs &#8212; Fetch, Import and SLOC (Single Line Of Code counting) &#8212; for each repository. We scheduled jobs for the first 300K projects in order of decreasing popularity. That generated some 550K jobs, most of which were Complete Jobs, but there were some Fetches as well (the scheduler has logic to determine which is best).</p>
<h1>Completed Work</h1>
<p>The Great Rescheduling started at the end of July &#8212; July 29 &#8212; and quickly moved through 100K or so jobs. Things were looking good. That &#8220;back-up for our back-end&#8221; is a system from which another team was migrating. It will have ample storage for us when this other team has cleared off their files and it has sufficient storage now for us to have gotten started. But with two teams performing significantly heavy work on the same SAN device, we&#8217;ve loaded this system to it&#8217;s maximum capacity. As a matter of fact, we loaded it so heavily that we went through a few weeks of the server regularly hanging and interrupting both team&#8217;s work (we got the vendor to help us clear out those issues).</p>
<p>Since July 29, we&#8217;ve worked through 95K projects, which represents some 128K repositories. Remembering that most repositories will use one Complete Job, but some will require three jobs &#8212; Fetch, Import and SLOC, plus the project will have another Analysis Job, we can see how 100K jobs that were reported can cover much fewer than 100K repositories.</p>
<p>This leaves almost 398K projects in need of an updated analysis and just over 3K new projects that have not yet had a first analysis. (It&#8217;s nice to see new projects being added to the Open Hub!) Understanding that there are currently 208K jobs remaining (from the original 550K jobs scheduled just about 8 weeks ago) helps explain why many projects have not had new analysis generated in the past two months. New job creation is blocked by the backlog of currently scheduled jobs. Oh, and we&#8217;ve manually scheduled updates for many, many projects when folks ask (we&#8217;re doing our best to keep up with requests, please drop us a line if you need something updated!).</p>
<p>You see, when the back-end job scheduler is all caught up, as it was before this upheaval, the majority of repositories would have been checked within the service window and did not need to be processed again. That&#8217;s when the job scheduler looks for new work to do &#8212; it searches for projects with no analysis or an out-of-date analysis and schedules brand new work for all the enlistments in that project. But since there is such a large backlog of existing jobs, the job scheduler never gets to the point of looking for new projects or stale projects. Nor will it until we can get through the backlog of initially scheduled work.</p>
<h1>Remaining Work</h1>
<p>Going back to the shared SAN: now that this system is stable, work is being performed, but we can see that the load over the past two months has dramatically impacted the throughput. The graph below shows the count of completed and updated analyses by day in the columns. The trend line is a 7-day moving average. The periods of practically no activity were due to us crashing the server.</p>
<p>On September 8, we completed 3500 analysis. Since then we&#8217;ve been averaging about 470 per day. This seems to be only due to the heavy use of the shared SAN device, which forms a bottleneck to the process.</p>
<div id="attachment_3282" style="width: 610px" class="wp-caption aligncenter"><img class="wp-image-3282" src="http://blog.openhub.net/wp-content/uploads/2016/09/Number-Analysis-and-7-Day-Trend-1024x314.png" alt="Daily Analyses Updated and 7-Day Trend Line" width="600" height="184" srcset="http://blog.openhub.net/wp-content/uploads/2016/09/Number-Analysis-and-7-Day-Trend-1024x314.png 1024w, http://blog.openhub.net/wp-content/uploads/2016/09/Number-Analysis-and-7-Day-Trend-300x92.png 300w, http://blog.openhub.net/wp-content/uploads/2016/09/Number-Analysis-and-7-Day-Trend-768x236.png 768w" sizes="(max-width: 600px) 100vw, 600px" /><p class="wp-caption-text">Daily Analyses Updated and 7-Day Trend Line</p></div>
<p>The other team is nearing the end of their work &#8212; somewhere in the 2-3 week range is the current best estimate. And they have begun clearing out directories that have been confirmed as successfully migrated, which is beginning to alleviate the load on the system, so we remain hopeful that the throughput will being to rise again. If we process 3000 Analyses per day, which means another 4+ months to get through all the remaining projects before we can start the updates (which go much faster than the initial fetches). That&#8217;s considering the average through to September 8. If we can maintain the more optimal 6000+ Analysis per day, then we&#8217;re looking at 2-ish months (after the other team is completely off the shared SAN).</p>
<p>Because the bottleneck is the SAN, but other work can be done, we increased the back-end capacity by 50% to help push everything through (yay VM&#8217;s!).</p>
<h1>TL; DR</h1>
<p>Total Number of Project to Update and Analyze: 495K</p>
<p>Total Number of Projects Updated since July 29: 95K (These are the most popular, which tend to be some of the biggest too)</p>
<p>Initial Number of Jobs Scheduled on July 29: 550K</p>
<p>Number of Jobs Remaining: 208K</p>
<p>Projected Duration to Complete Initial Refetch of ALL projects: 2 &#8211; 5 months after the other team frees up the shared SAN, which could be in 2-3 weeks.</p>
<p>Why So Slow: Multiple teams making heavy use of a shared SAN resource. The other team is migrating off of it as we are moving on to it. Not ideal, but it was necessary.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/09/update-were-doing-it/feed/</wfw:commentRss>
		<slash:comments>38</slash:comments>
		</item>
		<item>
		<title>We’re doing it!</title>
		<link>http://blog.openhub.net/2016/07/were-doing-it/</link>
		<comments>http://blog.openhub.net/2016/07/were-doing-it/#comments</comments>
		<pubDate>Fri, 29 Jul 2016 15:51:36 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3260</guid>
		<description><![CDATA[It&#8217;s happening!  We&#8217;ve started clean fetches of ALL of our repositories using the new SAN! For background, please see the Details on the Infrastructure blog post. We currently have 497K projects that have 592K distinct repositories that we are going to reprocess &#8230; <a href="http://blog.openhub.net/2016/07/were-doing-it/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>It&#8217;s happening!  We&#8217;ve started clean fetches of ALL of our repositories using the new SAN! For background, please see the <a href="http://blog.openhub.net/2016/07/details-on-the-infrastructure/">Details on the Infrastructure</a> blog post.</p>
<p>We currently have 497K projects that have 592K distinct repositories that we are going to reprocess from scratch. To do this, we cleared out all the old jobs that have not completed, connected our FISbots (Fetch, Import, SLOC bots) to the new SAN, and started re-scheduling new Fetch jobs.</p>
<p>We&#8217;ve completed nearly 100,000 repository fetches and have some 445,000 scheduled with a few more to schedule.  We are also monitoring the failures. Unlike the last set of failures, which could include problems due to the old SAN, these failures should all be actionable.  While there will be some repositories that will just be hard to get because they are large or the servers are slow, most of the failures are turning out to be repositories that are no longer present.  These types of failures are a real opportunity to look at the projects and determine if we can update the enlistments, or if the project has been abandoned and is no longer available any where (in which case, we will remove it from the Open Hub).</p>
<p>So, what does this mean for you, the awesome Open Hub User?</p>
<p>It means that it might take some time to get your project re-fetched and updated. We&#8217;ll do our best to respond to requests to get things updated, but please know that there is now a massive backlog that will take some time to process.</p>
<p>And after this is all over, we will have a smaller, leaner set of projects on the Open Hub that fulfill our mandate of monitoring active OSS projects.  And that will be better for all of us!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/07/were-doing-it/feed/</wfw:commentRss>
		<slash:comments>49</slash:comments>
		</item>
		<item>
		<title>Details on the Infrastructure</title>
		<link>http://blog.openhub.net/2016/07/details-on-the-infrastructure/</link>
		<comments>http://blog.openhub.net/2016/07/details-on-the-infrastructure/#comments</comments>
		<pubDate>Fri, 15 Jul 2016 20:09:29 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3257</guid>
		<description><![CDATA[In the blog post, Stepping Forward and Back, we mentioned that &#8220;we found additional complications with our new back end infrastructure.&#8221; We&#8217;d like to give you some more details about these complications. We are referring to an NFS mounted system &#8230; <a href="http://blog.openhub.net/2016/07/details-on-the-infrastructure/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>In the blog post, <a href="http://blog.openhub.net/2016/06/stepping-forward-and-back/">Stepping Forward and Back</a>, we mentioned that &#8220;we found additional complications with our new back end infrastructure.&#8221; We&#8217;d like to give you some more details about these complications.</p>
<p>We are referring to an NFS mounted system with enough storage for all 592,000 distinct repositories we track on the Open Hub.  Without naming names, we have three problems with the currently installed system:</p>
<ul>
<li>It does not support characters that are present in some repositories, thus generating an I/O Error when we try to fetch and update these repositories.</li>
<li>It is case insensitive by default so files and directories that differ only by capitalization overwrite one another.  This impacts a difficult to quantify number of repositories.  It would be very expensive to try to compare nearly 600K source directories with local copies in order to identify those that are missing files and/or directories.  Our current opinion is that nearly every repository is at risk of being impacted by this.</li>
<li>Performance through the NFS mount point can be so poor that updates can time out and the server at the source will terminate the connection.</li>
</ul>
<p>There is an alternative solution (which was actually the system that was requested) available from our vendor without the above issues, but that solution has a hard-coded limit of the number of entries that can be in a single directory.  We&#8217;ve reviewed existing repositories and have found multiple directories with more entries than the limit, which definitively precludes the use of this alternative solution.</p>
<p>You may be asking yourself why didn&#8217;t we detect these problems before committing to this system?  I wish we had.  We did not because we were not the first team to use this system for this exact purpose and these problems were not detected then.  We had used a different system for verifying functionality and performance and were under the impression that the target production system was simply a better system in all regards, unaware that the installed system was not what had been specified.  Finally, there were other scheduling pressures that encouraged us to move from our previous 18 bare metal infrastructure to our current VM infrastructure at an accelerated pace.</p>
<p>Here&#8217;s what we are doing to fix it:  The system upon which we did functional and performance testing is still available and will have more space freed to ensure we will have enough for all our repositories.  We are starting the work to relocate storage of new fetches to this new system.  Then we will start clean, new fetches <em><strong>of every repository</strong></em> in the Open Hub.</p>
<p>We will keep the existing data until we have had a chance to test every single repository.  Right now, we know that there are over 60K repositories impacted by some kind of detectable failure.  Most of them are for repositories that have moved and the enlistments on the Open Hub have not yet been updated. We are taking this work as an opportunity to review all those repositories that cannot be cleanly fetched. At the end of this process, we will have clean, local copies of the repositories upon which the Open Hub depends as well as a clear list of repositories that need to be reviewed to see if we can recover the projects that have enlisted them.</p>
<p>Again, we apologize for any inconveniences this may have caused and thank you for your continued support and patience.  We are also so grateful that you are a member of the Open Hub and the Open Source Software community.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/07/details-on-the-infrastructure/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Stepping Forward and Back</title>
		<link>http://blog.openhub.net/2016/06/stepping-forward-and-back/</link>
		<comments>http://blog.openhub.net/2016/06/stepping-forward-and-back/#respond</comments>
		<pubDate>Thu, 23 Jun 2016 17:03:04 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3253</guid>
		<description><![CDATA[Today we have some good news and some less good news. On the positive side, we have pushed a number of fixes and improvements into production recently. One is that we have added a new &#8220;Add New Project&#8221; button to the &#8230; <a href="http://blog.openhub.net/2016/06/stepping-forward-and-back/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Today we have some good news and some less good news.</p>
<p>On the positive side, we have pushed a number of fixes and improvements into production recently. One is that we have added a new &#8220;Add New Project&#8221; button to the Explore Projects page and changed the link at at the bottom of the page to a button as well so that it is much easier to see where one can add new projects to the Open Hub.  We have also fixed an issue that arose when trying to import really big GitHub repositories.</p>
<p>We made important fixes to the Fetch, Import and Sloc job processes to that the back end systems so that the system is more accurately detecting when repositories need to be updated and scheduling jobs for those.  We fixed the internal tracking issue so that the way low-level jobs report their work and update their status is correct and more consistent. We also addressed some small UI issues where the correct and full text was not included in a tool tip when claiming new positions and some other UI tweaks.</p>
<p>On the less positive side, we found additional complications with our new back end infrastructure.  In short, there are issues with the file system behind the NFS mount point where we store our repositories that is blocking a number of jobs from being able to run. It looks like many of the major projects &#8212; such as Mozilla Firefox, MySQL, Apache HTTP, etc. &#8212; cannot be updated.  Nor can we update these projects until the issue is resolved.  One current plan is to replace the NFS Server and reformat the disk with our repository data.  Obviously, that would mean a major loss of data.</p>
<p>However, due to the limitations of the file system, we have an unknown number of repositories that are already generating bad analysis because of data loss.  In essence, we&#8217;ve already been impacted by that risk and therefore we have to find a way to get a suitable NFS mount point and start refetching all the repositories. We&#8217;ll do our best to keep everyone informed.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/06/stepping-forward-and-back/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hey, Hey, Hey; What’s Happening Today?</title>
		<link>http://blog.openhub.net/2016/06/hey-hey-hey-whats-happening-today/</link>
		<comments>http://blog.openhub.net/2016/06/hey-hey-hey-whats-happening-today/#comments</comments>
		<pubDate>Wed, 08 Jun 2016 11:17:02 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3243</guid>
		<description><![CDATA[Hail Hubbites! As we talked about in our Open Hub in 2016 post, we have recently made a major step forward in addressing significant infrastructure concerns. Down in the &#8220;More Infrastructure&#8221; section, we mentioned, &#8220;So we started an effort to &#8230; <a href="http://blog.openhub.net/2016/06/hey-hey-hey-whats-happening-today/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Hail Hubbites!</p>
<p>As we talked about in our <a title="Open Hub in 2016" href="http://blog.openhub.net/2016/04/open-hub-in-2016/">Open Hub in 2016</a> post, we have recently made a major step forward in addressing significant infrastructure concerns. Down in the &#8220;More Infrastructure&#8221; section, we mentioned, &#8220;So we started an effort to virtualize our crawlers and are pilot testing that work now.&#8221; The FISbot servers are now out of the pilot test and the old crawlers are being decommissioned and un-racked.  That&#8217;s not to say that there are no problems, but the problems we have are not worth switching horses back to the old infrastructure. No, we&#8217;d rather take care of the horse we&#8217;re riding now.</p>
<p>However, the issues we are having are impacting data on the site and, while we are moving quickly to address them, we&#8217;d like to share what we know with you so that everyone can be kept up to date:</p>
<ul>
<li>There is an issue that after a Fetch, Import, SLOC cycle is completed, the follow-on Analysis Job is not always being generated.  This is leaving some projects with fresh raw data, but no updated analysis.</li>
<li>There is an issue that the Job Scheduler is not always detecting projects with out of date analysis and scheduling new jobs.  This is leaving some projects with no new fresh raw data.</li>
<li>We&#8217;ve changed the way we are doing some internal tracking and accounting of when jobs were executed. This switch has resulted in a mismatch between the fields where we are tracking job progress and the data we are presenting on the site so that some projects either show the wrong date the data were collected or do not show that value at all.</li>
<li>There are some new low-level issues with local copies of repositories.  Since we&#8217;ve switched from 18 crawlers with dedicated local storage to virtual servers with a NFS mount to a SAN, we are seeing new file system level issues.  These issues typically cause Fetch jobs to fail.</li>
</ul>
<p>To address these, we are combing through project and repositories repeatedly throughout the day and scheduling jobs to try and keep everything up to date. Please let us know if you project has fallen behind so we can address it while we work on the code fixes to bring the new FISbot infrastructure up to snuff.</p>
<p>In other news, the <span style="text-decoration: underline;">Spammer Cleanup</span> program is also out of the Pilot phase and is chugging through our accounts and inviting account holders to verify their account.  We are focusing on those accounts that were created and then show no activity on the Open Hub.  If you get one of these re-verification emails, please simply log on to the site and provide one of the requested forms of verification. However, if you have been an active member of the Open Hub, then you should not be part of this email re-verification process. However, we will still ask for verification when you log in if you&#8217;ve not logged in since these new security checks were put in place.</p>
<p>The &#8220;Invention Process&#8221; for our new security pages has started and is very exciting. We are looking at what we can produce and deploy quickly that will help illustrate the security landscape for OSS projects. After the initial deployment of fact-based data presentation, we will look towards adding additional elements that provide a broader overview of OSS security.  Oh, and look forward to a new Project page layout that will begin moving throughout the site and will take advantage of the larger screen size of modern day browsers.</p>
<p>Final point: Such Perform. Wow Speed.</p>
<p>In the post<a title="GitHub, Performance, and Crawlers (Oh My!)" href="http://blog.openhub.net/2015/10/github-performance-and-crawlers-oh-my/"> GitHub, Performance, and Crawlers (Oh My!)</a> from October 2015, we talked about the People Index page performance improving from 18-60 seconds to less than 1 second,  and the Explore Projects page improving from 100 seconds (!) also improving to less than 1 second, and widget performance improving to 1.5 seconds. We were very pleased that we restored the average web server response times to under 1.2 seconds, or 1200 milliseconds.</p>
<p>Ladies and Gentlemen, Boys and Girls, Things and Its; for the past few months, average web server response time has been under 400 milliseconds &#8212; a 3X improvement in speed.  Since the deployment of FISbot, average web server response time has been around 200 milliseconds, a 6X improvement in speed.  With a number of FIS jobs and Analysis jobs going unscheduled, we expect some impact to the site performance when we fix these code defects. Never fear; the next infrastructure project will separate the analysis database from the web application database and result in consistently speedy web application performance.</p>
<p>I know it&#8217;s been a tough process and at times the site was nigh unusable.  Thanks for sticking in there with us. You guys are the best (I&#8217;m getting teary over here). And we&#8217;re continuing to work hard to bring you the unparalleled best set of freely available analysis of ALL the OSS projects.  Thank you so very much for being part of the OSS community and member of the Open Hub.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/06/hey-hey-hey-whats-happening-today/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Open Hub in 2016</title>
		<link>http://blog.openhub.net/2016/04/open-hub-in-2016/</link>
		<comments>http://blog.openhub.net/2016/04/open-hub-in-2016/#comments</comments>
		<pubDate>Fri, 15 Apr 2016 20:10:48 +0000</pubDate>
		<dc:creator><![CDATA[Peter Degen-Portnoy]]></dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://blog.openhub.net/?p=3206</guid>
		<description><![CDATA[Hail Hubbites! There has been a lot of activity behind the scenes at Open Hub Central with a steady stream of improvements rolling into production. We&#8217;d like to brag talk about them and also tell you what we have coming up &#8230; <a href="http://blog.openhub.net/2016/04/open-hub-in-2016/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Hail Hubbites!</p>
<p>There has been a lot of activity behind the scenes at Open Hub Central with a steady stream of improvements rolling into production. We&#8217;d like to <del>brag</del> talk about them and also tell you what we have coming up in 2016.</p>
<h2>2015 In Quick Review</h2>
<ul>
<li>Project PURR (Platform Upgrade Ruby and Rails) &#8212; we wrote a whole new Open Hub UI in the latest tech with 99.5% test coverage (I kid you not!)</li>
<li>Effective Spammer Throttling &#8212; using verification tools to ensure a real, verified human behind new accounts. Spammer account creation has dropped from way over 700% to a very manageable 13%</li>
<li>Focus on Infrastructure
<ul>
<li>Improved a few critically slow queries that dragged the site down</li>
<li>Performed the first VACUUM FULL in ages on some critical tables</li>
<li>Improved average site performance 5X in 2015. Of course, it was pretty bad at times</li>
</ul>
</li>
<li>New Inventions: Security Data. Let&#8217;s talk about that, please keep reading.</li>
</ul>
<h2>2016 In Plan</h2>
<h3>Security Data</h3>
<p><img class="alignright  wp-image-3207" alt="New Security Info Button" src="http://blog.openhub.net/wp-content/uploads/2016/04/New-Security-Info-Button-300x212.png" width="240" height="170" srcset="http://blog.openhub.net/wp-content/uploads/2016/04/New-Security-Info-Button-300x212.png 300w, http://blog.openhub.net/wp-content/uploads/2016/04/New-Security-Info-Button-1024x725.png 1024w" sizes="(max-width: 240px) 100vw, 240px" /></p>
<p>We started by adding a new button to project pages. When we have vulnerability data from the National Vulnerability Database and/or VulnDB, we add a &#8220;Review Security Info&#8221; button in the Quick Reference section. This will take you to a new security feature we&#8217;re trying out. We&#8217;ll show you a graph of the number of vulnerabilities reported by version for the last 10 releases grouped by category.</p>
<p>We&#8217;ve gotten some very nice feedback from this initial feature and have decided to do more.</p>
<h4>Project Vulnerability Report</h4>
<p>The first thing we&#8217;re going to roll out is a new Project Vulnerability Report (PVR) that will show two ways of considering project vulnerability data across a project lifetime. One way will be a weighted absolute score: the Project Security Score, where a lower value will be better. The other will be a scaled scoring of projects based up on the weighted score against time: the Project Vulnerability Score, where a higher value will be better. When we roll this new feature out, we&#8217;ll include a blog post that details the ideas behind this new feature</p>
<h4>Project Security Pages</h4>
<p>Based upon the interest and feedback in the security info button, we are going to add some new pages to the set of project pages. These will follow the current focus of the Open Hub &#8212; the facts about Open Source Software projects. We&#8217;ll show the number of open defects over time, broken down into groups by severity, with trends, scores, and other factual data about vulnerability reports.</p>
<h3>More Spammer Cleanup</h3>
<p>This has already started and some of you have received some email requests during the Pilot run of this program. We are running a long term email campaign and requesting nearly all users to verify their account. If you have positions claimed, we do not intend to bother you with a few emails. However, you will be required to verify your account when you come back to the Open Hub if you&#8217;ve not already done so. The expectation with the outreach effort is that the vast majority of account holders don&#8217;t really exist. Account holders will have a generous period of time of about half a year, plus a few reminders (not too many!) to verify their accounts before they are flagged as a spam account and eventually deleted.</p>
<h3>More Infrastructure</h3>
<p>You may remember when we lost a crawler last year, had no new data for about two weeks, and then took a few months to get back caught up? (I do!) We recognized that our crawler infrastructure has been getting more and more fragile. So we started an effort to virtualize our crawlers and are pilot testing that work now. This will give us greater stability, a simpler code base, cleaner architecture, and horizontal scalability in our back end.</p>
<p>After this new Fetch, Import, and SLOC code (FISbot) is in place and serving the Open Hub and the Black Duck Knowledge Base, we will start work on separating the analytics database from the web application database. This will give each part of the Open Hub &#8212; the data collection side and the data presentation side &#8212; their own dedicated database that can be optimized for fulfilling their primary purpose.</p>
<p>We&#8217;re also going to switch from using the <a href="https://github.com/blackducksoftware/ohcount" target="_blank">C-based Ohcount</a> to the <a href="https://github.com/blackducksoftware/ohcount4j" target="_blank">Java-based Ohcount4J</a> for line counting so that all Black Duck products are reporting the same project statistics.</p>
<h3>More Other Stuff</h3>
<p>We also would like to do some updates to our UI and may roll out updated pages incrementally (rather than wait until we can touch the entire site entirely). We&#8217;d like to get some connection to GitHub with data on Stars, Watches, and Forks, and may be StackOverflow to show the top questions, most recent questions, best answers and answerers on the project pages. It would be pretty cool if we could connect Open Hub accounts to StackExchange accounts and let folks click through to see the answerer&#8217;s Open Hub account page with their Open Source resume as well as their answers on StackExchange.</p>
<h2>So Far in 2016</h2>
<p><a href="http://blog.openhub.net/wp-content/uploads/2016/04/Github-Repositories.png"><br class="Apple-interchange-newline" /><img class="size-medium wp-image-3209 alignleft" alt="Github Repositories" src="http://blog.openhub.net/wp-content/uploads/2016/04/Github-Repositories-300x139.png" width="300" height="139" srcset="http://blog.openhub.net/wp-content/uploads/2016/04/Github-Repositories-300x139.png 300w, http://blog.openhub.net/wp-content/uploads/2016/04/Github-Repositories-1024x476.png 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>So, in addition to the &#8220;Review Security Info&#8221; button with the security.openhub.net security page, and the Project Vulnerabilty Report, which will be pushed out into production soon, and the significant improvements to our back end that have yielded additional 2X speed improvements on the site, we have also just released a new feature to <span style="text-decoration: underline;">bulk-add GitHub repositories to your project</span>. The way this works is when you add a new code location, you can select &#8220;GitHub Repositories&#8221; from the SCM type and then enter the GitHub account name. We&#8217;ll then add <strong>all</strong> the public repositories in that GitHub account to the project.</p>
<p>There are other variations that we&#8217;re considering:</p>
<ul>
<li>Bulk create new projects for each GitHub repository</li>
<li>Bulk create new projects from other forges</li>
</ul>
<p>Also, we&#8217;re looking at the possibility of defining a new organization type &#8212; Distribution &#8212; this way we can identify organizations that package and distribute projects but don&#8217;t necessarily own or manage the project. Think &#8220;Fedora&#8221;, &#8220;Debian&#8221;, etc. This will require some internal changes to allow a project to be included in a distribution even if it is &#8220;claimed&#8221; by some other organization or is already part of a different distribution. We think this kind of distinction is long overdue and can be very helpful.</p>
<p>And, penultimately, we&#8217;ve been working hard on responding to those users who have contacted us via twitter, email, and have posted on the Forums. Thank you so very much for reaching out to us! And thank you for your continued patience as we work to get your issue resolved or question answered.</p>
<p>One more point: It&#8217;s time to say goodbye to &#8220;code.openhub.net&#8221;. In the near future, we will take the site down and replace it with a curtain message. There are lots of reasons including that the Black Duck product underneath this offering has been discontinued and the infrastructure is very expensive to run and maintain and, most importantly, it seems the most popular use of the Code Search site is to see if one&#8217;s own project is there and up to date. We&#8217;ve not been able to confirm a significant number of users who actually use the site for searching other repositories for code. On the other hand, we&#8217;ve not updated that site in a while, so it may also be that those users who may have been doing that have realized that the data is out of date and aren&#8217;t coming back. If you have an opinion, I&#8217;d love to hear it.</p>
<p>Thanks as always for being a member of the Open Source Software community and a member of the Open Hub. I&#8217;m always open to your email and tweets and am very interested in your thoughts and opinions.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.openhub.net/2016/04/open-hub-in-2016/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
