dotnetClub 的前世今生

三年之前,我做过一个在线调查,当时有不少人还是对一个在线社区表示出期待。.NET Core 技术正风声水起,所以我就开始了用它来开发一个论坛的计划。最近正式将项目推动到了一个 MVP 的状态。感兴趣的朋友,现在可以访问 preview.dotnetclub.net 来预览这个项目的最新状态,去往 GitHub 在 Projects 页面查看最近的开发计划,并在 issues 页面提出宝贵意见。

下面就一些话题展开分享一下:

为什么要开发这个项目?

三年之前,在 ASP.NET vNext 刚刚宣而时,我就做过一个在线问卷,36 人提交了他们对 ASP.NET 社区的看法。参与者 100% 表示认为 ASP.NET 需要一个新的社区。点击此链接 可查看该问卷上的更多数据(密码 asp.net)

640?wx_fmt=png

我参与过很多线上的群聊,包括微信群和 QQ 群等,尤其是 Mike 组织的群一直保持比较不错的活跃度。大家时常聊到很好的话题,在群里聊的时候当时大家都很兴奋、参与感很强,但事后也就过去了,基本也没有什么沉淀。这事实上是一种比较遗憾的浪费,除非事后有人总结了下来,否则对于没参与的人来说基本也没有机会再见到了。现在也有不少微信公众账号,特别是张善友组织的公号 “dotNET跨平台” 一直保持着很高的活跃度。可是公众号文章的范围也基本被限定在微信中,难以让更多人受益——特别是那些遇到了临时的问题,迫切地需要一些信息的时候,公众号的文章却不能第一时间就能在手边提供帮助。

实话说,我不太知道今天的初学者如何学习的,每当想到这一点,我就感到一丝愧疚。因为在过去,我从菜鸟成长的路上,是得益于网上无数前辈们的无私付出的,印象比较深的是周金桥的 ASP.NET 夜话系列,以及老赵的 MVC 系列。

然而现在,我们看到的一个结果是,除了博客园网站上时不时还有人发些文章,但人们看不到 .NET 人员在网上聚集的踪影。在线社区虽然看起来是一种过去用得比较多的形式,但它独有的形式能让参与者讨论的形式得以保存,它保存在开放的互联网上,供需要了解的人们随时检索。

这越发让我感觉到一个在线社区的紧迫性:我们需要一个社区,成为围绕 .NET 技术、特别是 .NET Core 技术的交流场合。它能够让有益的讨论得以沉淀,它能够为初学者提供清晰的指导,它能够让更广阔的技术社区看到 .NET 平台的实践方法和社区气氛。

社区项目的表现形式会是怎样的?

上面说到,我的出发点很简单,根据网友们的反馈,社区基本会是小型论坛的形式,但也会刊载初学者入门、典型场景的解决方案,以及社区活动等内容。

是的,就是形如 cnodejs.org 那样。

社区项目目前的开发进展如何?

社区项目的开发还在进行中,刚发了一个小版本。包含基本话题发布功能:

  • 匿名用户可以注册成为会员

  • 会员登录后可以发布新的话题,话题列表可以翻页

不过,相对于产品,其实社区重在运营。因此,可以说目前社区还没有正式开始运营,目前正在筹备阶段。 目前,上线了测试站 preview.dotnetclub.net 现在可以随便注册,发内容参与测试(测试站上注册的用户和内容会不定期删除)。正式上线时会使用 dotnetclub.net 的域名,届时正式版的内容会一直保留。

项目采用 .NET Core 2.1 开发,源码位于 github.com/jijiechen/dotnetclub,接下来的开发计划在 GitHub 页面的 Projects 页面,欢迎参与贡献,或者提 issues。

社区项目的代码怎样?

这个项目并不难,但我也希望用一些最佳实践去打造它,把项目打造成初学者学习的起点。目前,项目采用 .NET Core 2.1 开发,是一个 ASP.NET Core MVC 项目,目前支持数据库用的是基于 Entity Framework Core 的 Sqlite 数据库。部分所用的技术是:

  • 应用框架: ASP.NET Core MVC

  • DI 框架:内置 DI

  • 数据库:EF Core,Sqlite,FluentMigrator

  • 身份验证:ASP.NET Identity

  • 日志:内置日志组件和 Serilog 文件日志

  • 前端:jQuery, Bootstrap, Summernote, Turndown.js

  • 依赖管理:NuGet、bower

  • 单元测试:xunit 有 Moq

  • 自动化编译:cakebuild,gulp

  • 持续集成:TravisCI 和 AppVeyor

  • 打包工具:docker

  • 部署平台:Hyper.sh

  • 跨平台支持:Windows、Mac 和 Linux:开发在 Mac 和 Windows,部署在 Docker on Linux

可以根据 GitHub 页面上的提示,来编译和运行代码。 接下来的开发计划,前台主要是添加评论功能,另外要增加管理后台功能。管理后台准备做成前后分离的模式,目前还没有确定使用什么框架和工具。

.NET 技术是好技术吗?比起 Java 来如何?

这几乎是每次讨论 .NET 的时候,人们总会问到的一个问题。曾经,老赵直接地对 Java 和 C# 进行了全面的比较,说明了为什么 C# 是优秀的。然而,关于 .NET 和 Java 的讨论仍然不绝于耳。现在让我再一次简单地定义一下对这个问题的理解吧:

  • .NET 平台,尤其是 .NET Core 平台是优秀跨平台和开源的开发平台,这是与任何其他开发平台无关的客观事实,不容争辩

  • .NET 平台的繁荣有益于整个技术圈的创新,也有益于各个开发平台的相互竞争与互补

  • Java 语言是有用的。不过迄今为止,在 .NET 开发人员眼里,它是丑陋的:各种语法和 API 别扭啰嗦、性能差是它的典型问题

  • 围绕 Java 平台的生态是庞大而活跃的,也是包括 .NET 的各种其他开发平台都可以利用的宝库

  • .NET 和 Java 平台,以及对应平台上的各种开发语言都没必要声称自己是最好的开发语言和平台。关于最好的开发平台和编辑语言的争论是徒劳的

640?wx_fmt=png

显然,.NET 技术是好技术,没必要与 Java 相比。

.NET 社区活跃吗?

.NET 社区的活跃度是一个一言难尽的话题。不好说它不活跃,也并不是很活跃。.NET 技术最火热的时代大约是在十年之前,曾在一段时间里没有跟上互联网化的发展,出现低迷的情况。从四年之前开始的 .NET Core 技术已经重新唤起了人们对 .NET 技术未来的信任。

640?wx_fmt=jpeg

尤其是从去年开始,.NET Core 的社区日渐活跃起来。张善友的公号有数万的订阅者,每天的阅读量都在 5000 人次以上;最近由 ThoughtWorks 西安的同事张阳组织的活动有近一百人参与。今天我说要组织 dotnetClub 社区,一上午就组织起了 100 人的微信群。从这些简单数据都能看出来,社区里喜爱 .NET 技术的大有人在。而且社区气氛也在越来越好。

社区将以怎样的方式运营?

通常,技术人员并不善于做运营,我也不例外。所以看到善友兄的公众号那么有人气,我个人是十分佩服的。简单分享一下我的想法。本质上,社区的精髓在于人,而不在于代码。因此,关于社区的建设,我提出几点倡议:

  1. 鼓励专题分享、视频直播、开源项目、线下活动和出书立作等有益于知识传播和生态构建的活动

  2. 与其他形式的既有 .NET 社区(如在线群聊、用户组、翻译组、线下活动等)合作,推动在内容、会员和活动等方面的合作;与平行的其他方面的技术网站合作,组织线上和线下活动,推动 .NET 技术参与到整个技术生态之中

  3. 网站以非盈利性组织的形式运营。开通捐款通道,用于支持网站的日常运作。在网站公开接收捐款和使用款项的状况,确保捐款人的利益得到保障,确保网站持续运营。

  4. 努力保障日常发贴的能力,采用高可用性基础设施确保数据不会丢失。定期公布运营状况,与会员共享对网站的统计分析数据

  5. 后续会支持 GitHub 账号登录,并关闭自主注册机制,以确保用户的质量。引导分享和原创内容方向,鼓励围绕 .NET 及周边技术的内容。邀请注册用户参与内容审核与编辑,接受不良内容举报,确保内容质量的同时,杜绝各类违法信息的传播

项目的代码是开源的,希望大家一同贡献;社区网站的归属也是所有注册会员的,只要是符合上面的运营精神的内容,会员可自由发布,并可以编辑和删除自己发布的内容。

社区的参与者是哪些人?

设想中,社区的参与者包括这些类别:

  • 会员:参与社区讨论和内容贡献的人们。可自由、免费注册。

  • 管理员:从事各类编辑和管理工作,保障社区的日常运营秩序。邀请制。

  • 运维组:从事各类基础工作的人员,以确保社区网站的正常运转。邀请制。

  • 代码贡献者:社区网站项目的功能开发和技术升级的人员。通过贡献代码可自由地成为贡献者。

上述各类用户都是双向无偿的,即社区不向他们支付报酬,他们也不向社区或其他类别的参与者收取酬劳。

社区会商业化吗?

暂时没有这方面的打算,事实上,目前也没有一个对应的法律实体,或者社会化概念。因此,暂时没有人能代表这个社区。目前,如果有针对社区的捐款,或者以其他形式获得的收入,将用于社区的运营。

上文中的“我”是谁

“我”即是“诺普博客”的博主,陈计节。我是 ThoughtWorks 中国的一名咨询顾问,主要工作是与各类型的客户一同工作,改进他们团队的实践方式,提升团队的技术能力,以改善团队产品的质量和开发效率。请到我的博客查看关于我的介绍、取得联系。dotnetClub 社区项目由我发起,项目的代码目前主要由我贡献,网站也将由我运营。

原文地址: https://blog.jijiechen.com/post/dotnetclub/


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/319728.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P3308-[SDOI2014]LIS【最小割】

正题 题目链接:https://www.luogu.com.cn/problem/P3308 题目大意 三个nnn个数字的序列A,B,CA,B,CA,B,C。要求删除其中某些位置iii使得AAA的最长上升子序列至少减少111且删去位置BBB的权值和最小的情况下满足删去位置的CCC值升序排序后字典序最小。 解题思路 首先BBB值最小很…

Codeforces Round #656 (Div. 3)

A.Three Pairwise Maximums 首先最大的在原序列中肯定出现至少两次否则不能构造&#xff0c;即min max max&#xff0c;对于答案min min max肯定满足题意 #define IO ios::sync_with_stdio(false);cin.tie();cout.tie(0) #include<iostream> #include<algorithm>…

【LCT】网络(luogu 2173/ZJOI2011)

正题 luogu 2173 题目大意 给你一个图&#xff0c;每条边有有一种颜色&#xff08;numcolor⩽10num_{color}\leqslant 10numcolor​⩽10&#xff09;&#xff0c;保证以下性质&#xff1a; 1.一个点连出的同色边数不大于2 2.不存在同色边组成的环 现在让你进行3钟操作&…

【每日一题】7月13日题目精讲—Kingdom

【每日一题】7月13日题目精讲—Kingdom 文章目录题目描述题解&#xff1a;代码:时间限制&#xff1a;C/C 2秒&#xff0c;其他语言4秒 空间限制&#xff1a;C/C 1048576K&#xff0c;其他语言2097152K 64bit IO Format: %lld题目描述 X王国有n位官员&#xff0c;编号从1到n。国…

P3309-[SDOI2014]向量集【线段树,凸壳】

正题 题目链接:https://www.luogu.com.cn/problem/P3309 题目大意 nnn个操作 在序列末尾加入一个向量(x,y)(x,y)(x,y)询问加入的第l∼rl\sim rl∼r个向量中的一个向量和(x,y)(x,y)(x,y)的点积最大值 强制在线&#xff0c;点积的定义为x1x2y1y2x_1x_2y_1y_2x1​x2​y1​y2​ …

CanalSharp-mysql数据库binlog的增量订阅消费组件Canal的.NET客户端

一.前言CanalSharp是阿里巴巴开源项目mysql数据库binlog的增量订阅&消费组件 Canal 的.NET客户端&#xff0c;关于什么是 Canal&#xff1f;又能做什么&#xff1f;我会在后文为大家一一介绍。CanalSharp 这个项目&#xff0c;是由我和 WithLin(主要贡献) 完成&#xff0c;…

Codeforces Round #657 (Div. 2)

A. Acacius and String 爆零&#xff01;太菜了&#xff0c;下来终于把A题代码调AC了 #define IO ios::sync_with_stdio(false);cin.tie();cout.tie(0) #include<iostream> #include<algorithm> #include<cstring> #include<string> using namespace…

【树链剖分】软件管理(luogu 2146/金牌导航 树链剖分-2)

正题 luogu 2146 金牌导航 树链剖分-2 题目大意 有若干软件&#xff0c;除了软件0&#xff0c;所有软件都依赖且只依赖于另外一个软件 当要删除一个软件时&#xff0c;所有依赖于该软件的软件都要删掉 当安装一个软件时&#xff0c;该软件依赖的软件都要安装 问你每次操作…

【每日一题】7月14日题目精讲—压缩

来源&#xff1a;牛客网&#xff1a; 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 262144K&#xff0c;其他语言524288K 64bit IO Format: %lld题目描述 给一个由小写字母组成的字符串&#xff0c;我们可以用一种简单的方法来压缩其中的重复…

P3306-[SDOI2013]随机数生成器【BSGS】

正题 题目链接:https://www.luogu.com.cn/problem/P3306 题目大意 给出一个p,a,b,x1,tp,a,b,x_1,tp,a,b,x1​,t&#xff0c;有xiaxi−1bx_iax_{i-1}bxi​axi−1​b 求一个最小的nnn使得xntx_ntxn​t 解题思路 下标缩一下先变成x0x_0x0​会更好算一点&#xff0c;只考虑x0x_0…

【DevOps+LIVE】直播复盘 – DevOps能力成长模型2018首发

昨天晚上小编和DevOpsDays中国核心组织者刘征老师和张乐老师一起嗨了一把&#xff0c;本来规划进行1小时的直播结果延长到了2个小时才结束&#xff0c;观众人数在前半段一直处于增长状态&#xff0c;直到开播一小时到达顶峰。小伙伴也非常给力&#xff0c;一共提出了40多个问题…

Codeforces Round #658 (Div. 2)

A - Common Subsequence 最短相同子序列长度肯定为1&#xff0c;如果一个元素都不相等之间不存在相同子序列 #define IO ios::sync_with_stdio(false);cin.tie();cout.tie(0) #define debug(x) cout<<#x<<": "<<x<<" " #include…

【树链剖分】染色(luogu 2486/金牌导航 树链剖分-3)

正题 luogu 2486 金牌导航 树链剖分-3 题目大意 给你一棵树&#xff0c;让你进行以下操作&#xff1a; 1.把一条路径染上一个颜色 2.查询一条路径上有多少个颜色段 解题思路 用树链剖分把问题转化为链上问题 然后维护一下左右端点颜色和颜色总数就好了 代码 #include<c…

小小粉刷匠

来源&#xff1a;牛客网&#xff1a; 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 32768K&#xff0c;其他语言65536K 64bit IO Format: %lld题目描述 “lalala,我是一个快乐的粉刷匠”,小名一边快活地唱着歌,一边开心地刷着墙",兴致突…

P5363-[SDOI2019]移动金币【阶梯博弈,dp,组合数学】

正题 题目链接:https://www.luogu.com.cn/problem/P5363 题目大意 1n1\times n1n的网格上有mmm个硬币&#xff0c;两个人轮流向前移动一个硬币但是不能超过前一个硬币&#xff0c;无法移动者输。 求有多少种情况先手必胜。 解题思路 竟然有我会的题&#xff0c;我感动 位置做…

M-SOLUTIONS Programming Contest 2020总结

A - Kyu in AtCoder 直接模拟 #define IO ios::sync_with_stdio(false);cin.tie();cout.tie(0) #define debug(x) cout<<#x<<": "<<x<<" " #include<iostream> #include<algorithm> using namespace std; int main(…

Emit动态代理.NetCore迁移之旅

前言】前面我们介绍了Aop 从静态代理到动态代理&#xff1a;https://www.cnblogs.com/7tiny/p/9657451.html我们在.NetFramework平台下使用微软提供的Emit技术实现了动态代理类的生成。但是.NetCore作为微软.Net平台的春天&#xff0c;如果类库光支持.NetFramework&#xff0c;…

【LCT】弹飞绵羊(luogu 3203/金牌导航 LCT-2)

正题 luogu 3203 金牌导航 LCT-2 题目大意 给你n个格子&#xff0c;当你在第i个格子时&#xff0c;可以往后跳aia_iai​格&#xff0c;让你进行几下操作&#xff1a; 1.修改第i个数 2.查询在第i个格子跳多少下会跳出界 解题思路 往后跳相当于连接格子&#xff0c;由此建立一…

【每日一题】7月15日题目精讲—生日快乐

【每日一题】7月15日题目精讲—生日快乐 [SCOI2009]生日快乐 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 262144K&#xff0c;其他语言524288K 64bit IO Format: %lld题目描述 windy的生日到了&#xff0c;为了庆祝生日&#xff0c;他的朋友…

P1712-[NOI2016]区间【线段树,尺取法】

正题 题目链接:https://www.luogu.com.cn/problem/P1712 题目大意 nnn个区间&#xff0c;求出其中mmm个区间使得它们有覆盖同一个点且最长区间长度减去最短长度最小。 解题思路 因为是最接近的mmm个&#xff0c;考虑一种叫尺取法的做法。 先把区间按照长度排序&#xff0c;每…