Ohloh调研报告

简介: 1.背景      因为最近在搞ospaf也是就是一个开源项目成熟度分析工具,因为项目跟Ohloh有一些共同点,所以对ohloh进行了调研。      简单来说,最初的ohloh是一个代码搜索工具。我们输入一行代码,然后他可以查找到这行代码出现在那些开源软件的哪些类中,还是比较强大的,特别是在进行一些源码追踪的任务的时候。如下图所示,当我输入“python”的时候,它会显示python出现

1.背景

      因为最近在搞ospaf也是就是一个开源项目成熟度分析工具,因为项目跟Ohloh有一些共同点,所以对ohloh进行了调研。
      简单来说,最初的ohloh是一个代码搜索工具。我们输入一行代码,然后他可以查找到这行代码出现在那些开源软件的哪些类中,还是比较强大的,特别是在进行一些源码追踪的任务的时候。如下图所示,当我输入“python”的时候,它会显示python出现在哪些开源文件里面。


      后来ohloh被黑鸭子公司收购,整合完成了openhub这个网站,网址是https://www.openhub.net/(在墙外)
      openhub有一个非常有趣的功能,它可以对开源项目进行简单的比较。向下图一样
     
       我们拿ruby和mysql这两个项目作比较,除了罗列出一些比较基础的数值,比如说commits、develper数量等。它提供了一个开源项目活跃的的数值,也就是Project Activity。


2.活跃度指标分析


       前面说到,openhub这个网站提供了项目活跃度的指标,我就很好奇它是如何定义这个活跃度,它对于这个指标有一个解释(http://blog.openhub.net/about-project-activity-icons/),它的定义方法还是比较简单的,就是用contributor和commits的数量来衡量一个项目是否活跃,另外加上了时间序列作为判定,也就是一个项目近期它的contributor和commit数量越多,它的活跃度越高。

      另外,它的另一个评价项目的关键指标是用户的体验,也就是kqi。user rating其实很好的说明了一个项目的成熟度,他能做到这点应该是基于大量的用户数。



3.启发和思考

      首先,研究这个项目可以搞明白,哪些指标是真正影响项目成熟度的主要参数。比如说一个项目的活跃度主要是由能否维持一个恒定的贡献来决定的。
      其次,这个网站提供了很多有价值的数据,比如哪些项目比较活跃,哪些贡献者比较活跃水平比较高,这些数据很有价值。
  
      当然,我觉得openhub还是有一些地方可以加强,
          1.比如说对于项目的活跃度分类过于简单,可以多加进来一些特征来计算比较。当两个热的很高的项目比较的时候,没办法分辨出活跃度高低,可以改为打分形式。
          2.很多特征没有进行充分挖掘,比如说贡献者的水平。既然网站已经列出了一些比较杰出的开源贡献者,完全可以增加一个数值表示杰出贡献者比例。
          3.缺乏对于项目的综合评定,比如可以结合项目的活跃度、项目的完善程度等指标综合打分。
          4.可以增加用户的diy对比,不同用户对于项目的需求是不同的,有的可能需要活跃度高的,有的可能需要已经比较完善的。如果可与根据用户的需求,调整特征的权重进行比较会更好。




/********************************

* 本文来自博客  “李博Garvin“

* 转载请标明出处:http://blog.csdn.net/buptgshengod

******************************************/






目录
相关文章
如何给 NPM 设置代理
GFW 蛋疼的把 https://registry.npmjs.org 给墙了,导致无法通过 NPM 安装模块。
4099 0
|
JSON API 数据库
探索FastAPI:不仅仅是一个Python Web框架,更是助力开发者高效构建现代化RESTful API服务的神器——从环境搭建到CRUD应用实战全面解析
【8月更文挑战第31天】FastAPI 是一个基于 Python 3.6+ 类型提示标准的现代 Web 框架,以其高性能、易用性和现代化设计而备受青睐。本文通过示例介绍了 FastAPI 的优势及其在构建高效 Web 应用中的强大功能。首先,通过安装 FastAPI 和 Uvicorn 并创建简单的“Hello, World!”应用入门;接着展示了如何处理路径参数和查询参数,并利用类型提示进行数据验证和转换。
645 0
|
11月前
|
持续交付 项目管理 开发工具
GitLab不再为中国大陆、香港、澳门提供账号服务
GitLab 宣布从2025年2月18日起停止为中国大陆、澳门和香港用户提供 GitLab.com 账号服务,引发广泛关注。极狐 GitLab 已成为国内用户的替代方案,大多数中国用户依赖私有化部署,影响有限。GitLab 是基于 Git 的开源代码仓库管理系统,支持代码托管、项目管理和 CI/CD。其官方仓库位于 gitlab.com/gitlab-org/gitlab,GitHub 上也有镜像版本。开源社区依然活跃,但未来变化尚不确定。
1076 5
GitLab不再为中国大陆、香港、澳门提供账号服务
|
编译器 开发工具 C++
【Python】已解决error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build
【Python】已解决error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build
6937 0
|
11月前
|
Java 程序员
深入理解Java异常处理机制
Java的异常处理是编程中的一块基石,它不仅保障了代码的健壮性,还提升了程序的可读性和可维护性。本文将深入浅出地探讨Java异常处理的核心概念、分类、处理策略以及最佳实践,旨在帮助读者建立正确的异常处理观念,提升编程效率和质量。
234 1
|
11月前
|
Java API 开发者
深入理解Java中的异常处理机制
本文探讨了Java编程语言中异常处理的核心概念,包括异常类型、异常捕获与抛出、以及最佳实践。通过分析常见的异常场景和处理策略,旨在帮助开发者更好地理解和运用异常处理机制,提高代码的健壮性和可维护性。文章不仅涵盖了基本的try-catch结构,还深入讨论了自定义异常的创建与使用,以及finally块的重要性和应用。此外,还将介绍一些高级技巧,如多异常捕获和嵌套异常处理,为读者提供全面的技术指导。
254 0
|
缓存 JavaScript API
NodeJS代理配置指南:详细步骤和代码示例
**Node.js 代理配置:解决HTTP请求转发与CORS挑战** 在现代开发环境中,Node.js以其高效和灵活性深受青睐,但正确配置代理以处理跨域请求和API调用仍是复杂任务。本文提供全面指南,从基础到高级设置,教授如何在Node.js中使用代理,覆盖httpOptions、npm代理及第三方库的运用,以增强API调用灵活性。
1223 23
NodeJS代理配置指南:详细步骤和代码示例
|
机器学习/深度学习 人工智能 数据可视化
【2024美国大学生数学建模竞赛】2024美赛C题网球运动中的势头,网球教练4.0没人比我更懂这个题了!!!
本文是一位自称对网球规则和比赛数据非常熟悉的计算机博士对2024美国大学生数学建模竞赛C题"网球运动中的势头"的全面解析,包括问题分析、数学模型构建、代码实现,以及完整论文的逐步更新过程。
320 1
【2024美国大学生数学建模竞赛】2024美赛C题网球运动中的势头,网球教练4.0没人比我更懂这个题了!!!
|
消息中间件 Arthas Java
线上kafka消息堆积,consumer掉线,怎么办?
线上kafka消息堆积,consumer掉线,怎么办?
379 0
|
安全 JavaScript 前端开发
Wasmer 3.0 发布,可在浏览器外运行 WebAssembly
Wasmer 3.0 发布,可在浏览器外运行 WebAssembly
272 2