2016国产开源软件Top100(Q1)
2016国产开源软件Top100(Q1)
随着互联网的发展、开放标准的普及和虚拟化技术的应用等诸多IT新领域的创新及拓展,开源技术凭借其开放性、低成本、稳定性、灵活性、安全性和技术创新性等特点迅速走向成熟,逐步发展成为一种主流模式,日益改变着全世界软件产业的发展轨迹。
创新,不是老生常谈
技术发展依赖于创新举措。没有那些脱离束缚的好想法,技术发展将停滞不前。与此同时,创新也促进了企业与社会的进步。那么,什么地方的创新最多?不是甲骨文,不是苹果,不是Google,也不是微软,正确答案应该是:开源社区。要说最具影响力的创新,也许不一定来自开源社区;但要从数量上论的话,开源社区无疑是最大的创新工厂。创新已逐渐成为一种产业,而工厂也正是“复制”的代名词。
要进行IT技术的创新,最直接的方法莫过于去模仿那些成功的创新模式。国内的开源环境确实还一般,国内的公司普遍使用开源软件,但大多都是拿来主义,修改优先,原创极少,甚至有些公司干脆将剽窃称为自己的原创。其实抄袭也没什么,问题在于抄到的是皮儿还是馅儿:只抄到皮儿,那就是剽窃;抄到了馅儿,那就是观摩学习后的升华。为啥西天取经这种明显的抄袭行为能流芳百世?一来人家玄奘在翻译的同时标明了出处,二来人家做了再创作,加入了自己的见解,升华了高度。娱乐圈里的模仿也是随处可见,王菲、那英、刘德华、张学友等明星在形成个人风格之前,都是从模仿开始。演艺明星和喜剧演员也从来不避讳自己的模仿技艺,小沈阳的走红除了借助央视春晚这一平台,他本人的模仿功力也是让观众折服的重要因素。
奉献,也是一种快乐
开源的发展离不开社区的发展,我国的开源社区已从最初的爱好者社区发展到具有开发、应用、服务功能的稳定社区。开源的发展离不开“奉献”二字,我们对开源的直观的认知,是一系列的开源软件,比如Linux,Apache,MySql,PHP,Python,Ruby等等。而这些软件的背后,大多是一个人或者几个人是其核心的维护者。
开源中国社区联合创始人张海龙两年前在接受周刊记者采访时表示:开源中国社区(oschina.net )一开始是个人兴趣而做的。因为平时在开发过程中常常需要查找一些常用的开源软件,用搜索引擎十分不方便,于是就自己开始建立开源软件库。后来慢慢加入了新闻,论坛,博客等功能,逐渐发展到现在这样。
国内开源的现状是有较大数量的企业在积极的参与开源、贡献开源,并不单纯都是拿来主义。比如,豆瓣、淘宝等一些公司,纷纷把自己的一些项目开源出来。通过参与开源社区,企业可以与全球最优秀的开源人才、最优秀和庞大的开发团队合作,第一时间分享开源最新的技术和理念,以最快的速度部署新的应用等。
当然,除了企业,还有大多数对开源感兴趣的个人开发者,他们不仅要做开源技术的实践者,更要做贡献者,应把自己的聪明才智反馈到社区中去,共同维护开源社区这样一个非常良好的生态环境。
开源中国社区项目百强
为此,本文以开源中国社区为源池,从软件的收藏、下载、访问等多角度,从6000多个国产开源软件中挑选出了 2016 年当红的国产开源软件前100名,并对这些国产开源项目的发展进行了梳理。
简介:
显然,在开发内部和外部应用程序时,企业越来越多地使用开源代码,使用免费预构建的组件,而不用自行编写代码,能够显著缩短应用开发时间和提高软件开发成功概率。
总之,使用开源技术的好处颇多。简单来讲,它有利于减少垄断,减少某一个公司,或者几个公司对业界垄断性的管理和控制;非常有利于公平的竞争,进而催生大量的创新,并将之宣告世界,被众人所接受。
近年来,国内的一些大公司开始涉足开源,并努力营造一种开源文化。在这样的氛围中,对程序员是友善的,程序员在其中能得到更大的发展,更好地自我实现。
未来,如果能有更多关于开源的报道和活动,给更多开源项目和开源人曝光的机会,那么开源技术也就没有想象中的那么高不可攀了,开源会逐渐从IT行业的创新工具变成普通民众的日用品。
2016国产开源软件Top100(Q1)的更多相关文章
- 2016国产开源软件TOP100(Q1)
随着互联网的发展.开放标准的普及和虚拟化技术的应用等诸多IT新领域的创新及拓展,开源技术凭借其开放性.低成本.稳定性.灵活性.安全性和技术创新性等特点迅速走向成熟,逐步发展成为一种主流模式,日益改变着 ...
- 2014年最热门的国人开发开源软件TOP100
2014年最热门的国人开发开源软件TOP100 不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多 ...
- GitHub 上最热的10款国产开源软件
衡量一个开源产品好不好,看看产品在 GitHub 的 Star 数量就知道了.由此可见,GitHub 已经沦落为开源产品的“大众点评”了.一个开源产品希望快速的被开发者知道.快速的获取反馈,放到 Gi ...
- 2015年热门的国产开源软件TOP 50
2015年热门的国产开源软件TOP 50 开源中国在 2015 年得到了快速的发展,单开源软件收藏量就接近 40000 款,其中不乏优质的国产开源项目.本文从软件的收藏.下载.访问等多角度挑选出了 2 ...
- 2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件
2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT 基础设施和网站,一些提供与开源工具相关的产品和服 ...
- 2016最受欢迎国产开源软件评选,2016 年度开源中国新增开源软件排行榜 TOP 100
http://www.oschina.net/news/80154/2016-cn-open-source-software-top http://www.oschina.net/project/to ...
- 2014 年最热门的国人开发开源软件 TOP 100 - 开源中国社区
不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...
- 【转】10款GitHub上最火爆的国产开源项目
将开源做到极致,提高效率方便更多用户 接触开源时间虽然比较短但是后续会努力为开源社区贡献自己微薄的力量 衡量一个开源产品好不好,看看产品在 GitHub 的 Star 数量就知道了.由此可见,GitH ...
- 点评10款Github上最火爆的国产开源项目
衡量一个开源产品好不好,看看产品在Github的Star数量就知道了.由此可见,Github已经沦落为开源产品的“大众点评”了. 一个开源产品希望快速的被开发者知道.快速的获取反馈,放到Github上 ...
随机推荐
- go语言:获取字符串长度
go语言字符串底层由字节数组实现,使用UTF-8编码,初始化以后不能被修改 获取字符串长度 一.当字符串中所有字符都是单字节字符时,使用 len 函数获取字符串的长度 package main imp ...
- tomcat9下载与安装
tomcat9下载与安装 官网下载地址:https://tomcat.apache.org/ 百度云地址:链接:https://pan.baidu.com/s/109PYcSh-eqTctLAXIsb ...
- Leetcode56. Merge Intervals合并区间
给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] ...
- ue4 fstring 和std::string互转
https://forums.unrealengine.com/development-discussion/c-gameplay-programming/6517-convert-std-strin ...
- Redis 复制、Sentinel的搭建和原理说明(转)
Redis 复制.Sentinel的搭建和原理说明 转自:http://www.cnblogs.com/zhoujinyi/p/5570024.html. 背景: Redis-Sentinel是Re ...
- Java开发中的Memcache原理及实现
Memcached 客户端程序 Memcached的java客户端已经存在三种了: ? 官方提供的基于传统阻塞io由Greg Whalin维护的客户端 ? Dustin Sallings实现的基于 ...
- 转搞定python多线程和多进程
转自https://www.cnblogs.com/whatisfantasy/p/6440585.html 1 概念梳理: 1.1 线程 1.1.1 什么是线程 线程是操作系统能够进行运算调度的最小 ...
- NFS服务器搭建与配置
原文:https://blog.csdn.net/qq_38265137/article/details/83146421 NFS服务简介什么是NFS?NFS就是Network File System ...
- 深入探索WebSockets
WebSockets简介 在2008年中期,开发人员Michael Carter和Ian Hickson特别敏锐地感受到Comet在实施任何真正强大的东西时所带来的痛苦和局限. 通过在IRC和W3C邮 ...
- c++进制数转换
QString result; ]; sprintf(buffer, "0x%x", modelId); return result = buffer;