BYBLACK DUCK

Updated Search Results, Report Duplicate Projects, and Performance Improvements

Today’s blog post is a recap of the work we’ve done for Sprints 7, 8 and 9, covering the past 6 weeks since my last blog post. If you want to stay up-to-date what we’re doing each Sprint as it happens, check out the Ohloh releases page.

Updated Search Results

We’ve made some changes to the way search displays results:

  • Tags: Based on a user request, we’ve now added tags to search results
  • More metrics: Search results now show lines of code and number of users
  • Other UI tweaks to improve the overall user experience

 

We’ve removed the “all” search and set the default to search projects, making the search faster and results more relevant. Previously, the default search would search for all projects, people, and forums. Based on usage behavior, we determined that users are looking for either a project or a person (or something in the forums), so it made sense to restrict the scope of the search to one of these types.

 

Report Duplicates

Users can now report to site administrators (aka the Ohloh team) whenever they find a project to be a duplicate of another project. Ohloh will merge all data associated with the project, including ratings, reviews, contributors, and so forth, into the original project.

The feature is found on the project page under Edit – Report Duplicate.

 

Performance Improvements

Ohloh operates a large cluster of servers that together process over 50,000 source code downloads and analyses every day. With so much going on, if even just a small percentage of our jobs fail, we end up with a large number of problems that need to be investigated. We’ve added better back end tools to help us manage failures. By categorizing similar failures, we can identify, fix, and re-schedule jobs more efficiently. This should lead to fewer noticeable problems for end users.

We’ve also instrumented the Ohloh server code with profiling hooks to measure our performance at every step during our analyses. This will help us identify the hot spots in Ohloh’s server code, telling us where to focus our attention to speed up Ohloh’s processing overall.