中国程序员,请挺起你的腰杆!

  这两天发生一个事,登月50周年之际,阿波罗11号制导计算机(AGC)指令和登月模块的源代码在Github上发布公开了,大量中国人前往围观,把issues区当成了论坛版块灌水留言。猎奇起哄本为消遣作乐,有不妥之处予以纠正即可,但新闻发酵后,竟然涌现诸多程序员的跪式言论,着实让人震惊!

640?wx_fmt=png

640?wx_fmt=png


  我不是民粹,但我也明白一些基本的逻辑和道理,尊重,从来不祈求要来的,而是自己去争取的,还TMD道歉,道NMB的歉,学姐学妹都要被HG、LC的留学生给抢走了。还在这低三下四的向一个白人主导的技术社区道歉?

中国程序员,能不能挺起你的腰杆!

如果你还是心虚,那我来帮你撑起腰杆

一、从逻辑上为什么不需要道歉

640?wx_fmt=png

1、这是一个孤立的热点事件,就和知乎、微博、豆瓣、果壳啥的突然出了个和本站主题无关的大新闻,然后大家都去围观灌水是一个意思。在阿波罗11号的issues灌水留言发表和项目无关的主题,完全无法推导出中国程序员会在需要讨论技术的时候喜欢搞无厘头,实际情况也绝非如此

2、灌水行为也绝不能定义为破坏行为,存在即是合理,996.icu同样靠灌水壮大,虽然最后清理了issues,但不可否认那些灌水帖子甚至广告、交友帖子对其壮大做出了巨大贡献,且不论996.icu是对是错,当其发展成一个社会热点甚至成为某些群体争取权益的工具时,背后这些“无事佬”们功不可没。如果一个repo被赋予了一定的技术之外的社会含义,那复杂的社会行为也将成为他的组成部分。

3、没有什么所谓的100%需要遵守的准则,issues用来提交问题解决问题只是一种官方定义后的约定俗成,实际上社区中的玩法也是千奇百怪的,且不说其他著名repo的issues中也有被作者认可的灌水聊天行为,但凡使用github较多的同学就会发现,很多“约定俗成”并没有被完全遵守,有的人就是喜欢在dist文件夹里直接放一个编译结果,有的人就喜欢干净,只用官方的release发布,有的人喜欢在README里写出近乎一整个网页,有的人就喜欢只放一个link跳转到自己域名页面来介绍项目,甚至还有不喜欢出现在contributors名单里,只喜欢用注释标明身份然后委托别人提交的怪咖。如果说灌水需要道歉,那边界到底在哪?有技术洁癖的人,遇到只会甩出一句为啥自己下载后无法编译的白痴技术问题的小白,那这不也成灌水了吗,难不成还要杀了他逼他道歉?

4、外国的月亮没有你想的那么圆,就好像很多人但凡提到番茄花园雨林木风盗版、52破解社区时,都一副自己富裕后咬牙切齿憎恨侵犯知识产权的样子。事实上是,国外的这些鼻祖大一堆,board4all,海盗湾,KAT,五花八门,ico骗钱、暗网交易多如牛毛。行为的确是错误,但别人关起家门来在自己社会体系和法律体系里都来不及处理,根本不缺你这点道歉,也完全不会关心你这点道歉,你的道歉连别人的社会规则和习惯都融不进去,真的就别去凑热闹了

二、为什么中国程序员需要站起来

640?wx_fmt=png

1、这是一个社会问题,但也是无法逃避的问题,任何群体,在发展壮大的过程中,不惜一切代价、斗争式的去争取维护自己的权益,这是意识形态上的唯一出路。还是这句话,先不论对错,纵观全世界,大到人种(黑黄白)、人群(LGBT、宗教),小到群体(狗奴、猫奴、996.icu),无一不重复着这条争取权益的路径。话语权、标准制定、规则制定等等,看似是技术问题,实则是社会问题,你不争取,就要被打被宰,弱肉强食的世界,西方白左们给你营造出的技术乌托邦世界是不存在的。

2、中国程序员也是如此,伴随着近20年的高速社会发展,无论是程序员数量,还是代码质量,甚至在创新创造上,中国的程序员,都已经登上了历史的舞台。成为了不容小视的一股力量

3、中国程序员需要持续提高自己的收入,需要提升软件的社会认可和价值,需要在自己的代码生活的方方面面享受到自己人般的待遇,更需要在开发和学习中找到舒服的属于自己社会规则和习惯的便利,而这些,都需要自己先站起来,慢慢争取,慢慢实现。

三、站起来的资本在哪里

不说空话,不说大话,中国程序员站起来不是意淫,不是幻想,而是一种历史的必然进程。

640?wx_fmt=png

1、绝对的人数和人种碾压。不吹不黑,13亿人的基数在这,大部分还是勤劳好学的黄种人,有什么理由不对任何一个其他国家和民族形成巨大优势呢,这种优势从数量开始,也必将成就质量的碾压

2、中国特色的社会制度和发展,成就了软件行业的巨大跨越式发展,各行各业的赶鸭子上架式、泡沫投资式、不计后果式、先上车后补票式的大发展,形成了无比巨大的软件需求黑洞,无数的实践机会,无数的练手场景,促成了中国软件行业和中国程序员群体在短短数十年间的快速提升,vue这样东西的出现以及作者去阿里的行为,不是偶然,而是必然,没有美国的尤雨溪做出vue,也会有阿里的嘻嘻嘻做出xixixi,印象中第一代Hybrid App框架由PhoneGap领衔,现在再看,国内的HBuilder,AppCan、APICloud,WeX5等,无一不做出了自己的巨大生态和体系,甚至据我所知HBuilder早在数年前就有了开发时真机实时调试、远程云打包这样的重大创新,领先国外同类技术体系数年。这些领先,都是数量巨大的case和project带来的红利,就像医疗体系一样,纵使你医疗技术和研发再好,你能有三甲医院这么数量巨大的病例和练手机会吗?

3、在原理上有站起来的资本,在实际上也不断地在站起来,在BAT领衔的互联网浪潮和国家主导的信息化浪潮下,相当多的技术领域都有站起来的迹象和成果说两个产业需求反向推动技术进步的典型Web和移动开发领域,能看到越来越多的国人做的JQuery插件、Bootstrap插件,甚至有不少人在做基础JS库和框架的替代品,MVVM相关就更多了,微信领衔了微信H5、小程序vue的研发,形成了一套自己的创新,支付宝、百度、头条等都跟着做了自己的小程序模式,App开发中,因为过于业务创新和复杂,UI和安全架构上也脱颖而出一些自主研发的高级设计模式。Web和移动领域不说技术的绝对领先吧,但体系本身的创新已经是世界独一份了。同样的,数据库和接口网关领域,得益于电商和新零售的发展,海量数据和业务请求的处理,成就了许多重大创新,所以你看阿里云或者腾讯云,在某些功能上有抄袭和模仿的痕迹,但数据库相关,总是有大量自主的干货全球领先。

4、基础技术的领先是资本,但同样的,应用领域的领先也是资本,从某种意义看,甚至是更加雄厚的站起来的资本。还拿阿里云举例,阿里云的CDN发展之路,正是一个中国应用技术发展领域的缩影,你可以说CDN技术的核心是节点数量、节点控制、命中率、刷新速度等,背后是高性能C++Web服务和复杂逻辑的研发,但在应用层面,阿里云从一开始节点薄弱的时候的就做出了产品性相当厚实的控制面板,做出了与OSS存储、域名解析、安全控制等互联互动的创新功能场景,在研发过程中持续迭代产品面板和功能,这种扎实的应用层面的研发带来了无比数量的用户和粉丝,并反向倒逼了底层技术研发。中国人很聪明,几千年来都很聪明,懂得借势借力,不管你觉得这是小聪明也好,是民族特性也好,但在我看来,这完全是一种可以炫耀的资本。

四、未来可期

640?wx_fmt=png

1、诚然,现阶段中国的软件数量很大的情况下质量有些堪忧,但这些问题并不是中国人本身造成的,如果你同时背着房贷又背负着“社会规则”,就算你在BAT华为拿着高薪也无法全身心地最高效的投入到技术研发和创新中,但这归根结底是社会问题,从长远看也是能够克服和解决的,更何况还是有巨大的人口基数,就算成功率比别人小一倍,最终成功数也比别人多得多,未来一定是可期的,试想一下,如果H5委员会、C++标准化组织成员都是中国人,如果HBuilder的王安不是中国H5Plus的委员而是世界H5的主委,那又将会如何呢?

2、“站起来”三个字的分量很重,不仅仅是说要承担社会责任、民族发展这样的大道理,更多的是各种细节的推进,任何技术领域的方方面面,都可以站起来。在中国程序员身上,未来可成就的事情实在太多了,例如对对github、stackoverflow这样社区的涌入、占领、模仿和规则挑战,例如对开发语言编译器、IDE等研究工作的参与、学习、创新与创造,例如对软件工程架构领域、技术研发管理领域的实践和模式创新,例如对重要行业软件、领域软件的学习、设计和自主创新落地等等等等,太多的地方等着你站起来!

3、什么是未来?未来就是我中国人多,我黄种人聪明能干,所以都由我创造,都由我定标准。哪怕做坏事的创新,像孙宇晨、李笑来啥的,也得是我中国人。

所以,中国程序员们,当你已经被老板剥削的苦不堪言,被房贷压得喘不过气的时候,能不能时刻认清自己的优等民族整体,对外挺硬腰杆站起来!


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

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

相关文章

Codeforces Round #592 (Div. 2) G. Running in Pairs 构造(水)

传送门 文章目录题意:思路:题意: 思路: 史上最水GGG题,没有之一。 考虑最小的情况如何构造,显然就是让a,ba,ba,b都1−n1-n1−n依次排列即可,这样的最小值为n∗(n1)2\frac{n*(n1)}{2}2n∗(n1)​…

Async,Await和ConfigureAwait的关系

在.NET Framework 4.5中,async / await关键字已添加到该版本中,简化多线程操作,以使异步编程更易于使用。为了最大化利用资源而不挂起UI,你应该尽可能地尝试使用异步编程。虽然async / await让异步编程更简单,但是有一…

Educational Codeforces Round 75 (Rated for Div. 2) E2. Voting (Hard Version) 贪心

传送门 文章目录题意&#xff1a;思路&#xff1a;题意&#xff1a; n≤2e5,m≤n,p≤1e9n\le2e5,m\le n,p\le 1e9n≤2e5,m≤n,p≤1e9 思路&#xff1a; 首先需要发现一些性质&#xff0c;假设preipre_iprei​代表所有mj<im_j< imj​<i的pjp_jpj​和。可以发现&#…

DevOps案例研究:知人善任——Google敏捷核心文化

内容来源&#xff1a;DevOps案例深度研究-Google敏捷实践战队&#xff0c;本文只展示部分PPT及研究成果&#xff0c;更多细节请关注案例分享会。本文内容贡献者&#xff1a;陈霁、刘翀、谈佳婧、张霖。阅读干货前先感受一下热烈的氛围~一、Google如何快速交付原型1.1 Savioke公…

在 VS Code 中轻松 review GitHub Pull Requests

相信大家在平时工作或者自己的项目中&#xff0c;一定都有在 GitHub 上进行 Code Review 的经历。对于韩老师来说&#xff0c;不论是平时工作的项目&#xff0c;还是自己的业余项目&#xff0c;代码基本都是在 GitHub 上。所以&#xff0c;在 GitHub 上进行 Pull Requests 的 C…

火热的云原生到底是什么?一文了解云原生四要素!

所谓云原生&#xff0c;它不是一个产品&#xff0c;而是一套技术体系和一套方法论&#xff0c;而数字化转型是思想先行&#xff0c;从内到外的整体变革。更确切地说&#xff0c;它是一种文化&#xff0c;更是一种潮流&#xff0c;是云计算的一个必然导向。随着虚拟化技术的成熟…

为什么说拥抱.NET CORE的时候到了

微软和社区已经做了大量艰苦的工作&#xff0c;使.Net Core成为市场上具有竞争力的框架&#xff0c;帮助开发人员快速开发具有最佳性能和可扩展性的强大应用程序。做的最棒的事情是.Net Framework开发人员不需要任何新知识来处理.Net Core。这也是开发人员在很短的时间内采用.N…

程序员如何学习英语

首先&#xff0c;这不是一篇广告&#xff0c;虽然这个标题很像。其次&#xff0c;我的英语水平也很一般&#xff0c;所以更多的是谈谈一些失败的经历和思考&#xff0c;俗话说&#xff0c;成功的经验不可复制&#xff0c;失败的经验倒可以让我们少走弯路。英语的重要性毋庸置疑…

使用Azure云原生构建博客是怎样一种体验?(上篇)

点击上方蓝字关注“汪宇杰博客”导语https://edi.wang我的网站是在.NET Core 平台上使用 C#语言编写的开源博客系统&#xff0c;运行于微软智慧云 Azure 国际版上。本文将重点介绍 Azure 的各项服务如何为博客带来丝滑体验与保驾护航。历史回顾我博客的历史可以追溯到2003年&am…

Orleans 知多少 | 2. 核心概念一览

Orleans 术语解读上面这张图中包含了Orleans中的几个核心概念&#xff1a;GrainSiloOrleans ClusterOrleans Client从这张图&#xff0c;我们应该能理清他们之间的关系。Grain作为最小的执行单元Silo 是 Grain 的宿主运行环境&#xff0c;用来暴露具体的服务Orleans Server 提供…

动手造轮子:实现一个简单的 EventBus

动手造轮子&#xff1a;实现一个简单的 EventBusIntroEventBus 是一种事件发布订阅模式&#xff0c;通过 EventBus 我们可以很方便的实现解耦&#xff0c;将事件的发起和事件的处理的很好的分隔开来&#xff0c;很好的实现解耦。微软官方的示例项目 EShopOnContainers 也有在使…

通过 nginx-proxy 实现自动反向代理和 HTTPS

本章节代码已经上传至 https://github.com/siegrainwong/.NET-Core-with-Docker/tree/master/Part3系列大纲这次我们讲第三篇&#xff1a;用 docker-compose 启动 WebApi 和 SQL Server在容器中集成 Skywalking APM通过 nginx-proxy 对 Portainer、Skywalking、WebApi 实现自动…

P4781 【模板】拉格朗日插值

传送门 把公式实现一下即可&#xff1a; 当xxx连续的时候可以优化为O(N)O(N)O(N)。 // Problem: P4781 【模板】拉格朗日插值 // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P4781 // Memory Limit: 125 MB // Time Limit: 1000 ms // // Powered by CP Edi…

MediatR-进程内的消息通信框架

MediatR是一款进程内的消息订阅、发布框架&#xff0c;提供了Send方法用于发布到单个处理程序、Publish方法发布到多个处理程序&#xff0c;使用起来非常方便。目前支持 .NET Framework4.5、.NET Stardand1.3、.NET Stardand2.0等版本&#xff0c;可跨平台使用。要在项目中使用…

不好意思,这么久没有更新《从零开始掌握ASP.NET Core 》

点击上方蓝字&#xff0c;关注「我们」等了快个月了&#xff0c;终于开始更新了。因为感冒&#xff0c;弄的嗓子有点沙哑。所以停了半个月才是更新&#xff0c;目前一口气更新了12个章节&#xff0c;大家可以耐心观看内容了。《从零开始学ASP.NET Core 》-- 更新通知视频课程更…

使用Azure云原生构建博客是怎样一种体验?(下篇)

点击上方蓝字关注“汪宇杰博客”接上篇《使用Azure云原生构建博客是怎样一种体验&#xff1f;&#xff08;上篇&#xff09;》DNSAzure DNS 是一套分布全球的域名解析服务。具有超高可用性和接近实时的记录更新及生效速度。我的博客也使用了这项服务。Azure 现在可以提供域名注…

2021牛客暑期多校训练营1 G Game of Swapping Numbers 思维 + 巧妙的转换

传送门 文章目录题意&#xff1a;思路&#xff1a;题意&#xff1a; 给你两个数组A,BA,BA,B&#xff0c;你可以选择AAA的两个位置i,j,i<ji,j,i<ji,j,i<j交换Ai,AjA_i,A_jAi​,Aj​&#xff0c;需要交换正好kkk次&#xff0c;问你最大的∑i1n∣Ai−Bi∣\sum_{i1}^n|A_…

.NET Core 3.0之深入源码理解HttpClientFactory(一)

写在前面创建HttpClient实例的时候&#xff0c;在内部会创建HttpMessageHandler链&#xff0c;我们知道HttpMessageHandler是负责建立连接的抽象处理程序&#xff0c;所以HttpClient的维护实际上就是维护HttpMessageHandler的使用&#xff0c;释放HttpClient并不会及时释放连接…

WTM 构建DotNetCore开源生态,坐而论道不如起而行之

作为一个8岁开始学习编程&#xff0c;至今40岁的老程序员&#xff0c;这辈子使用过无数种语言&#xff0c;从basic开始&#xff0c;到pascal, C, C&#xff0c;到后来的 java, c#,perl,php,再到现在流行的python。小时候的我总觉得多掌握一门语言&#xff0c;我的技术能力就又前…

架构杂谈《六》

超时处理模式在服务化或者微服务架构里&#xff0c;传统的整体应用拆分成多个职责单一的微服务&#xff0c;微服务之间通过某种网络通信协议互相通信和交互&#xff0c;完成特定的功能&#xff0c;然而由于网络通信的不稳定&#xff0c;在设计系统时必须考虑到对网络通信的容错…