1、软件开发、云计算、数据分析和机器学习工具

1Kubernetes

Kubernetes作为Docker生态圈中重要一员,是Google多年大规模容器管理技术的开源版本,是产线实践经验的最佳表现。无论是公有云还是私有云甚至混合云,Kubernetes将作为一个为任何应用,任何环境的容器管理框架无处不在。正因为如此, 目前受到各大巨头及初创公司的青睐,如MicrosoftVMWareRed HatCoreOSMesos等,纷纷加入给Kubernetes贡献代码。随着Kubernetes社区及各大厂商的不断改进、发展,Kuberentes将成为容器管理领域的领导者。

2Github安全警告服务

众所周知,现在开发软件已经变得不难,因为现在软件项目通常使用大量的依赖库。开发者虽然非常容易开发项目,简单而又方便了,但是一旦上游库有 Bug 将会影响到下游软件。现在最大的开源软件开发平台 GitHub 宣布了安全警告服务,将搜索依赖寻找已知漏洞然后发送给开发者,以便帮助开发者尽可能快的打上补丁修复漏洞。GitHub 将会识别所有使用受影响依赖的公开项目,使用私有库的项目则需要选择加入才能使用安全警告服务。

3Progressive web apps

Progressive Web Apps(以下简称 PWA)以及构成 PWA 的一系列关键技术的出现,能够显著提高应用加载速度、甚至让 web 应用可以在离线环境使用的 Service Worker Cache Storage;用于描述 web 应用元数据(metadata)、让 web 应用能够像原生应用一样被添加到主屏、全屏执行的 Web App Manifest;以及进一步提高 web 应用与操作系统集成能力,让 web 应用能在未被激活时发起推送通知的 Push API Notification API 等等。

4GraphQL

GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。 GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。

5Vue.js

Vue.js是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

6Google Cloud spanner

Google正式推出了其最新的全球分布式关系数据库服务Cloud Spanner。据称,这项企业数据库服务支持ANSI 2011 SQL标准和ACID协议,拥有高达99.999%的可靠性和极强的兼容性,同时还具备低延迟的特性。为Google Cloud加分不少。

7CockroachDB

CockroachDB,目标是打造一个开源、可伸缩、跨地域复制且兼容事务的 ACID 特性的分布式数据库,它不仅能实现全局(多数据中心)的一致性,而且保证了数据库极强的生存能力,就像 Cockroach(蟑螂)这个名字一样,是打不死的小强。CockroachDB 的思路源自 Google 的全球性分布式数据库 Spanner。其理念是将数据分布在多数据中心的多台服务器上,实现一个可扩展,多版本,全球分布式并支持同步复制的数据库。

8Azure cosmos DB

Azure Cosmos DB 是由 Microsoft 提供的全球分布式多模型数据库。 只需单击一个按钮,即可通过 Azure Cosmos DB 跨任意数量的 Azure 地理区域弹性且独立地缩放吞吐量和存储。 它通过综合服务级别协议 (SLA) 提供吞吐量、延迟、可用性和一致性保证,这是其他数据库服务无法提供的。

9Neo4j

Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。

10MapD

前哈佛/MIT计算机科学和人工智能实验室研究员Todd Mostak,开发出使用GPU的数据库分析和可视化平台 MapDMostak创办了同名创业公司去商业化MapD。今天MapD能在毫秒内处理数十亿个数据点,性能100倍于传统数据库系统,它还能在几乎瞬间可视化所有处理的数据,并可以随时修改参数调整可视化显示。

11Apache Spark

Apache Spark是个开源和兼容Hadoop的集群计算平台。由加州大学伯克利分校的AMPLabs开发,作为Berkeley Data Analytics StackBDAS)的一部分,当下由大数据公司Databricks保驾护航,更是Apache旗下的顶级项目。在数据全部加载到内存的情况下,Spark可以比Hadoop100倍,在内存不够存放所有数据的情况下快Hadoop 10倍。

12Scikit-Learn

Python语言有所了解的科研人员可能都知道SciPy——一个开源的基于Python的科学计算工具包。基于SciPy,目前开发者们针对不同的应用领域已经发展出了为数众多的分支版本,它们被统一称为Scikits,即SciPy工具包的意思。而在这些分支版本中,最有名,也是专门面向机器学习的一个就是Scikit-learnScikit-learn项目最早由数据科学家 David Cournapeau 2007 年发起,需要NumPySciPy等其他包的支持,是Python语言中专门针对机器学习应用而发展起来的一款开源框架。

1R语言

R语言是用于统计分析,图形表示和报告的编程语言和软件环境。 R语言由Ross IhakaRobert Gentleman在新西兰奥克兰大学创建,目前由R语言开发核心团队开发。 R语言在GNU通用公共许可证下免费提供,并为各种操作系统(如LinuxWindowsMac)提供预编译的二进制版本。 这种编程语言被命名为R语言,基于两个R语言作者的名字的第一个字母(Robert GentlemanRoss Ihaka),并且部分是贝尔实验室语言S的名称。

2TensorFlow

人工智能开源神器。TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。

3PyTorch

2017 年初,Facebook 在机器学习和科学计算工具 Torch 的基础上,针对 Python 语言发布了一个全新的机器学习工具包 PyTorch。一经发布,这款开源工具包就受到了业界的广泛关注和讨论,经过几个月的发展,目前 PyTorch 已经成为从业者最重要的研发工具之一。

(4)Kotlin

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。

5Rust

RustMozilla开发的注重安全、性能和并发性的编程语言。“Rust”,由web语言的领军人物Brendan Eichjs之父),Dave Herman以及Mozilla公司的Graydon Hoare 合力开发。

6微软Olympus项目

微软与OCP联合推出了Olympus项目(奥林巴斯-是希腊东北部爱琴海附近的一座山峰的名字,古希腊认为那是神住的地方),该项目鼓励社区力量在硬件开发设计的早期参与进来,灵感来自软件开发社区,软件方面多年封闭的微软终于开源了,不过开源的是硬件,微软开始祸害那些搞硬件的传统厂商了。

总结:技术层出不穷,专一是王道。

2、开源免费的项目管理

(1)项目管理和缺陷跟踪工具 Redmine

Redmine 是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。Redmine是一个自由开放 源码软件解决方案,它提供集成的项目管理功能,问题跟踪,并为多个版本控制选项的支持。

(2)开源项目管理平台 Taiga

Taiga 是一个免费开源,而且功能非常强大的项目管理平台,用于初创企业和敏捷开发团队。提供一个简单、漂亮的项目管理工具。Taiga 采用 Python Django 框架开发,前端基于 AngularJS 实现。

(3)基于 Web 的项目管理平台 2-plan

2-plan-team 提供基于Web 的项目管理平台。 相对于一些老牌的开源项目管理平台如redminedotproject等,它的界面更友好,用户体验更佳。

4)项目调度和管理工具 GanttProject

GanttProject 是一个免费易用的使用甘特图进行项目调度和管理的工具。

5)灵活的开源项目管理工具 Orangescrum

Orangescrum 是一个采用 CakePHP 框架的 Web 应用程序,可用来灵活地管理项目。

6)开源项目管理系统 Jitamin

 

Jitamin 、是一款免费、开源,使用PHP语言开发的项目管理系统。Jitamin灵感来自于Vitamin,并结合了Just In Time(准时)和敏的拼音min,意指效率和敏捷是项目管理的维他命。

7)项目管理应用程序 OpenProject

OpenProject 是一个开源的、基于Web的项目管理应用程序。OpenProject 为项目团队提供了整个项目生命周期的支持,通过插件,OpenProject 支持:

    协同项目计划

    进度报告

    任务管理

    时间和成本报告

Scrum

8)项目管理软件 OpenProj

项目管理软件,权威的自然是 P3(primavera project planner),但是 P3 极其昂贵,用起来也较为复杂。OpenProj 做的较为出色的是它是跨平台的,Windows, Linux, Unix, Mac(这个 Unix 版本较为特殊,一直是专门列出来的)下都能使用。小工程项目可以考虑使用 OpenProj,可以节省一大笔开支。

9)商业协作和项目管理的平台 ONLYOFFICE

ONLYOFFICE(曾用名:TeamLab) 是一个免费开源的商业协作和项目管理的平台。TeamLab 主要功能包括:项目管理、里程碑管理、任务、报表、事件、博客、论坛、书签、Wiki、即时消息等等。

10)项目管理工具 DotProject

DotProject是一个基于Web的项目管理工具,采用 PHP 开发。它包含的模块有:公司管理,项目管理,任务进度跟踪(运用甘特图),论坛,文件管理,日历,通信 录,备忘录/帮助桌面,用户与模块的权限管理,主题管理。DotProject已被翻译成17种语言并采用模块化设计以便于扩展。

Logo

开源、云原生的融合云平台

更多推荐