内容来源:2021 年 6 月 5 日,由 SegmentFault 思否主办的 2021 中国开发者生态峰会圆满落幕。会上, .NET基金会成员、资深.NET顾问和解决方案专家张善友发表了主题为《 .NET社区运营》的演讲,以社区工程师的角度分享了 .NET社区发展的过程。
分享嘉宾:张善友, .NET基金会成员、资深.NET顾问和解决方案专家。
速记整理及发布:SegmentFault 思否编辑部
我是一家小型创业公司的CEO,但是.NET不是我的产品。这是个非常健康的社区,是个自驱动的社区。可以根据ppt的内容来看我们的社区是什么样子。.NET社区是开发者社区,.NET是微软的一个产品。
2014年开源后它成立了.NET基金会,它类似于Apache基金会的项目。它的基金会是全球性质,它的历史已经很悠久,最早是从2001年开始,到现在已经20多年。中国也有大量的软件开发者在用.NET的技术。在中国大家很多听到的是Java,其实你可以来想一下,.NET和Java是对等的,可以替代Java,Java也可以替代它,两个角色是一样的。
我是专业工程师,也是开发者。运营.NET开发者社区。立足在中国市场上,公司使用.NET技术服务客户等业务。也是通过社区获取市场,从2016年起,国内云厂商开始以做开发者社区的方式进行TO B业务。一些大型的云厂商都有参考微软的MVP项目。像华为云的MVP项目,腾讯云的TVP项目。我作为开发者,并且想和正在做开发者的社区进行连接,所以我就成为了运营开发者的社区中的一员。
我参与社区运营接近20年,期间运营公众号,有两个公众号。稍后会给大家介绍。在社区里面做开源项目,一种社区驱动的项目,在社区中大家叫我张队长,其实是美国队长的角色。
今天我给大家分享社区发展的过程,以社区工程师的角度介绍。
社区运营金字塔
社区运营里面有金字塔模型,首先人和动物的区别是人有思想。人的思想是有信念、使命、价值观。社区怎么样去驱动,要有它的骨架,框架帮我来驱动社区。驱动的框架最基本的东西是产品服务。开发者要从中获益,才会使用你。在之前讲的使命,价值观。在社区里面要有继续下去,留下的理由,社区在不断的更新,有新人进来旧人离开,一波一波的滚动,滚动过程中有对应的模式,这些机制保证过程是在不断成长的。
最底层的产品服务可以体现你的开源项目。比如现在的社区围绕着.NET开发技术圈层的社区。
.NET社区的使命、信仰和价值观
.NET的各种产品服务、讲信仰、价值观。社区的历史非常悠久,从2000年开始到现在,这个过程里,有高潮,从2000年到2012年前在走上坡路。2012年之后,到14年15年,随着中国、世界进入移动互联网时代,微软在这一波掉队了。你可以看到微软在2014年之前,市值只有2000亿美元,从2014年之后,到现在已经接近20000亿美元,现在是1.8万亿美元(今天已经突破2万亿),微软新任CEO萨提亚·纳德拉写的书叫《刷新:重新发现商业与未来》。.NET由原来以微软为中心的产品变成了以云原生为目标的应用开发平台。.NET在今天的中国发展,相比2010年以前,你较少感受到微软中国的身影。社区的发展进入了自驱动的模式。我只是以使用.NET技术的社区里的大咖,KOL的角度,来运营脱离微软的自主制社区。
2014年之后,.NET的产品开源之后成立了.NET基金会。以基金会组织来发展它的生态。它的生态组织比较简单,是独立的、创新的、是永远开源的。整个社区要转变为不是以微软为中心,而是以基金会为中心,从早期,以微软的产品,windows的开发为中心,现在以云原生应用开发为中心,可以在任何地方运行,在Windows,Linux,mac运行,包括云厂商,在windows,腾讯云,阿里云,华为云都可以。
.NET社区的模式与机制
简要介绍一下.NET基金会,.NET基金会是开源组织,开源组织的产品代码文档,要选择开源协议,它选择了最宽松的MIT;Apache2的协议。文档协议为CC-BY,在整个开源世界里面是最宽松的,代码在GitHub上面有.NET仓库是可以开发,可以发展。在这20年历程里,我画了图给大家回顾,最早是因为微软平台厂商,开发者服务很早就开始了,后面他围绕.NET项目,大家知道微软最早开始用Java,但是它把Java 改成了Windows版本的Java。Sun 的公司和他打官司。微软赔了10亿美金之后还不许用Java,微软联合了世界上主要的IT厂商,如惠普、戴尔等,把他们组织起来设计.NET ,他设计了两个标准化的标准。ECM334、ECMA335,这两个标准提交到标准化组ecma,以标准化的组织再去开发平台。这是与在中国最流行的Java非常不同的地方,Java虽然说是开源了,但受Oracle控制的。他从2001年提交了标准化文件后,2002年正式发布了1.0的版本,基于标准的两个规范文件,新的开源项目启动了,是社区一个叫Mono的开源项目,从2002年开始启动,开源社区主要以Linux为代表,那么windows和Linux现在是两个不同的操作系统,他们互为竞争。在2008年,微软把web开发框架ASP.NET MVC全部开源在它的开源组织网站codeplex。网站现在已经不存在了,微软收购了GitHub,把这些内容换到GitHub。2014年4月微软更换了CEO萨提亚,随后投资成立了.NET基金会。他上任后改变了原来鲍尔默的策略,他成立.NET基金会,第一个开源项目是把他的编译器项目Roslyn,Roslyn编译平台开源到.NET基金会之后。前面提到的开源项目Mono,编译器统一到Roslyn里。到了2016年,微软把Mono背后的商业公司Xamarin收购之后,也把它放到了.NET的基金会。那么再往后,17年.NET Core2.0发布,18年.NET Core3.0发布,在19年、20年后。到5.0,它把前面的产品全部统一,包括今年还会发布.NET 6.0。它成立了.NET基金会,我们来。从前面的整个发展过程里面可以看到.NET和.NET基金会,它发生了很大的变化。从14年之前。.NET产品只是微软windows的一部分,那么他自然是在windows开发者的一部分。那2014年之后,他把.NET基金会独立出来,做成基金会项目来进行运营。微软只是基金会里面的一员。这样有大量的开发者,他不管是Google、redhat、三星。仍然有非常多使用.NET技术的公司一起来维护生态,发展生态。
.NET产品与服务
那上面是说.NET产品的发展过程历程,那么社区里面怎么样去驱动呢?他最早的.NET,是微软的项目,是微软的最有价值专家项目,MVP项目。我们在国内的各个城市就有.NET俱乐部。社区组织以前主要搞线下活动,现在主要以线上各种媒体微信公众号。2014年开源之后,.NET周边有非常多延伸的开源项目。比如博客园,很多做开发者社区应该都知道博客园网站。网站于2004年成立,基本上是以.NET社区的内容为主体,而现在已经不仅是.NET内容,也涵盖大量的其他内容。里面有我们早期的线下各个城市组织的当地的活动以及各地举办活动的照片,我们是程序员在当地自驱动的组织。是健康的社区,我们社区以程序员群体为主要目标。
我们是开创程序员的舞台,如果你只是观众,没有走上舞台,那你在舞台上,你是发挥着什么作用。在各个城市都有组织,并在19年20年举办了第一届,第二届开发者峰会,开发者的峰会是没有由微软官方,而是由我们社区自己组织的。包括公号媒体都是我们社区自己组织的。其中有公众号,最大的.NET跨平台是我的。还有在GitHub,包括国内的码云上各种开源项目。这开源项目还会形成各种组织,下面我会给大家介绍。那上面的各种组织,有各种组织的话,会体现为你要有、基本的产品和服务。给大家介绍.NET,你可以用.NET构建你现在所有类型的应用系统。而不是开发app我用Java吧,我开发web也可以用Java到PHP。那么,我要开发AI要用python,开发lot、游戏。包括桌面应用,wpf全部都可以开发。从无论从桌面到外部到云端到你的移动应用到游戏开发。
包括物联网的应用开发、AI开发,它的整个平台都可以用.NET技术进行开发。他用一个技术可以开发不同类型的应用,从这个图,我们换角度来看一下,它就包括了你的开发工具,包括VISUAL STUDIO他的产品。想用开源的产品开发也可以, VISUAL STUDIO CODE 。包括命令行也可以,可以开发各种应用,这样的产品服务应用好,你的体验才好,我们看一下.NET产品,在TechEmpower网站上每年都会做专业的性能评测。.NET在主流排名的top5、主流网站排名的top3。可以体现他的性能等各种方面是非常好的。刚才说开发各种应用。围绕这些应用会形成各种各样的社区,我给大家介绍一下,Blazor中文社区。现在的应用开发都是前后端分离的。大家都听说过我用Blazor开发前端,.NET完全可以开发前端。用.NET开发前端的产品叫Blazor,国内也有专门的社区围绕着这个产品。去年有一系列的直播,叫《进击吧!Balzor!》,还有线上线下的meetup,包括前天还在举办的一天的Blazor活动,还有微信群、GitHub,各种开源项目组成了.NET里面的社区。还有围绕web端开发对应的开源项目,也有对应的社区。
云原生应用开发 Dapr 也是比较新的开源项目,这也是微软开源的,这上面还不仅仅是.NET你可以在任何任何平台上,以任何语言去运行。是比较新的云原生应用开发,这里涵盖了我的开发者还有运营者。其实我们可以从现在云原生上面去和其他的社区有交集。比如说我的组织者,原来主要以我们.NET社区为主要成员,之后开始扩展到其他的成员,因为它上面可以支持到很多像GO、JS、Python等等往外去扩展。
另外一个是以AI为主要聚焦点的。这也是一个开源社区,也有一系列的开源项目围绕着在.NET上怎么样去做AI。这样的一个社区里面有非常多的开源项目,还有包括线上、线下的培训。社区本身也会提供一些技术支持,包括我们公司也是类似的,在社区中提供技术服务。那么我们.NET开发者在微信开发者生态里面。它提供了非常多围绕在微信开发者生态的开发者,在.NET项目里面微信的使用量是非常大的,微信的公众号,企业微信,微信各种开发。他是有非常多的需求的。不是那种很大的公司,仅是创业公司,或者是很小的公司,qq群、微信群就有几万之多了。
这次更加有意思的是社区的开源组织。我们社区里面有非常多的开发者。原来有非常多的开发者,个人开发了很多的开源项目,但这些开发者有个特点,他们都不是来自大厂。不是阿里,也不是腾讯,甚至有一些连互联网企业都不是。他们是传统的企业,而且我们社区有特点,有很多的开发者群体。他们的开发者规模都不大,大概达到几百人这种,都是比较少的。但是他的整个分布有非常的广泛。你如果深入到除了互联网之外的传统制造业。你都会找到那些对应的开发者的人群,那么些人群呢,他们会在工作中受到当前的开源潮流,包括互联网的冲击。那么在中国有个非常有趣的现象,在.NET社区里面有很多老板要把.NET转到Java这样一个浪潮,这样的浪潮,主要也是以阿里为代表的。这个过程里面。就会催生了很多自发的组织,他们开源了很多项目,原来都是孤零零的,所以我们在社区里面针对这种开源项目成立了和微软没任何关系的民间组织。和其他的大公司也没关系,就完全是我们社区里面的组织,他叫.NET Core Community (NCC)。
那现在里面有20多个开源项目。我们也给大家列出了一些对应的开源项目。在中国.NET社区的整个发展其实受到Java的挤压,但是他的应用又非常的广泛。除了互联网之外的那些传统企业,的有大量的应用是用.NET构建的,现在国家也在推行国产化,在国产化中.NET他是可以在ARM、华为的鲲鹏等体系下是完全可以运行的。但是我们国内还有龙芯。龙芯是完全自主的芯片厂商,他们也在发展对应的开发者。那么他们要支持着他们芯片的生态。那么他们今年刚发布了新的架构LoongArch。他们从2019年开始支持.NET。原来是MIPS架构。2021年,也就是今年的六月份,他们LoongArch新版本的龙芯架构会支持.NET。
下面再给大家展示一下两个我们社区自己组织的会议情况,这是.NET在2014年开源之后,在中国社区里面,完全由我们社区主导的会议。
2019年是在上海第一次举办,那时候所有的成员都是兼职的。没有专业的开发者组织来办这个活动。大家都是业余时间来参与。最后是800多人现场参加,开发参会的人群是遍布全国。很多开源者真的是有一种热爱,自己从全国各地飞到上海,一起来参加会议。
那么在2020年,我们在苏州举办了第二届。第二届的时候,因为疫情的原因,我们线下控制了人数。原来是想控制在300人,最后的参会人数已经也是达到了500人。
2020年的时候,我们是线上线下结合的模式。整个包括CSDN和思否的线上直播。线上参与人数有10万,线下是超过了500人。
我的分享内容到这里就结束了,谢谢大家。
点击【阅读原文】观看演讲视频,重温精彩时刻