为什么一些程序员热衷于讨论sql、并发、框架、架构,却不讨论路由、操作系统等?

1

这种现象也是国内软件行业现状的体现,不是程序员不想谈论路由和操作系统,而是想谈却谈不起来!要不找几个大学的计算机教授来唠五块钱的操作系统,看看有几个能聊明白?或者大家想想咱有能拿的出手的操作系统供大家谈论的吗?

但这个问题仍然值得我们深思,我认为有以下几点原因导致了大家多谈论sql,架构,并发和框架,而很少谈论路由和操作系统的现象。

人们谈论多的往往是所涉足的,对于未曾接触的却无从谈起

都说没有实践就没有发言权,这句话放在这里就挺合适。这个问题要分开来看:一方面,大家想谈路由和操作系统却没有谈资。另一方面,此程序员非彼程序员,路由和操作系统的实现不是一般程序员可以完成的!打个比方,都是运动员,你问问詹姆斯和科比为什么不和刘国梁比赛乒乓球呢?根本就不一个类目嘛~

如果你是一个家庭主妇,久而久之你谈论的将围绕着柴米油盐。如果你是二人转演员,那么生活中处处都是段子。同样由于我们国内的程序员日常工作大都围绕着sql、并发、框架和架构,所以这就成为了大家的谈资。反过来,如果都是做操作系统开发的,还愁没人聊有关话题吗?

2

看了这位大叔的职业生涯,简直就是传奇的一生!崇拜之情油然而生,不由得停下了正在敲击键盘的双手,思绪进入“如果我有这么厉害的技术那么我会...”的幻境之中,开始意淫起来。。。

突然,产品经理来了,让我给他把一个用户的数据给修改一下。我打开MySQL客户端工具,并连接上了线上的库,写了一条sql:“select * from user where user_id = 123”,然后按照产品经理的要求把这条数据给修改了。然后继续回到我的idea上开发APP这个版本要迭代的功能。

回归到题主的问题,为什么不讨论路由、操作系统?个人认为有以下几点可以讨论一下:

不会底层操作系统知识

这个是真的不会,大多数人都不会,除了在大学期间学的计算机原理、操作系统这些知识以外,工作以后真的很难接触到这些东西了。就算能接触到一些,也是一些皮毛。大多数人毕业之后都从事软件开发了,个人认为这也是国内硬件普遍较差于软件的一个原因。

3

感请!

程序员一般率属于企业级公司的研发部人员,从事软件开发性质的工作。注意不是研发而是开发。

顾名思义。程序员是开发人员,开发软件的基层人员。就是通过一些写好的固定的计算机语言组装自己想要的想法、需求等。而在这个组装过程中的技术就是体现程序员能力的强弱。

sql语句的组装、并发线程的处理、软件框架的搭配使用都是个人能力的丰富体现。也是程序员在工作中必须要学会的知识点的。

一般人都是活谈论自己的长处,不会去过多的解释讨论自身的短处。而路由、操作系统,讲真。软件行业中的大部分程序员都不会接触或者深入学习这部分知识点。

4

你问到根上了,大量从业人员是普通应用的,他们不懂网络,不懂路由,更不懂操作系统。懂这些就业面窄,也不需要很多人懂。记住人才的金字塔结构分布,就知道了。夸夸其谈,好像很牛逼的,其实顶多处于金字塔的腰部。大牛不会在网上和你讨论的,因为说了也没多少人懂。人家时间金贵!

5

从这种心态可以看出,还是迷信国内程序员不如国外的程序员厉害,国内软件行业经过近二十年的发展,已经积累了一大批经验非常丰富软件开发工程师,国内互联网公司能有这么大的影响力除了国内人口数量多的红利之外,还有一个很重要的因素国内程序员质量已经上来了,如果没有这个基础不可能发展这么迅速,国内一批优秀的编程高手已经在很多领域做出了国际水准,像阿里的阿里云算是中国程序员的一个杰作,水平已经能到很高的水准了,不像是很多人讲到的国内程序员只会简单的搬运工作。

程序员讨论的内容不可能仅仅限于框架,架构,路由和操作系统也是在这个范畴,特别是一些嵌入式系统经常有操作系统定制工作,也属于程序员讨论的重点,程序员讨论什么内容和工作的内容有着直接的关系,记得在一个项目内大家都非常热衷于讲自己的代码提交到开源社区,并且被通过认可,这种对于程序员来讲是巨大的荣誉,现在国内已经有很多的程序员在做这个事情了,很多开源社区里面已经陆续看到中国程序员的影子了,在初级阶段可能因为底子还比较薄弱。开始先是进行学习,基础足够了才能有创新的机会。

很多人觉得中国的程序员只会山寨,不懂得原创,在自己非常弱小的时候先是让自己存活下来然后才是创新发展,很多企业刚刚挣扎在死亡线上这个时候不可能有多大的创新产生,只有拥有了足够的财力才能有底气去搞创新搞研发,任何企业都离不开这个规律,程序员在一起讨论的问题点差别场景太多了,程序员讨论技术问题未必是在现实中,一般喜欢在网络上寻找答案,或者喜欢发论坛进行讨论,平时具体讨论主要是和项目相关的事情,很难直接去谈一些架构问题。

程序员能力高低主要和思维能力和基础编码能力决定的,编程基础可以随着时间的推移进行积累,思维能力需要经过经过项目的提炼,所以没有做过项目的程序员不算真正的程序员,程序员能力提升不要随着时间推移一步步提升的,有些程序员进步几年后慢慢进步就变得十分缓慢了,主要在编程思维上没有实现真正的突破。

国外程序员因为英文的先天优势在很多方面都要优于国内程序员,但到了一定程度不一定比咱们的要强,但和祖师爷级的老手差距还是非常巨大,主要还是历史的积累问题,类似于编程语言级别的创新国内程序员还是有差距,在应用型方面以及构建编程的生态系统方面也是存在比较大的差异,承认差距然后努力去追赶,也是国内程序员需要做的事情,没有必要妄自菲薄,也没有必要自我夸大,平常心去对待认真完成一个基本功能模块,认真审视每一行代码,时间足够长了,国内一样能诞生世界级的编程大神,希望能帮到你。

6

我国大多数公司的开发只停留在应用层面,对于计算机底层技术的研究还比较落后。受大环境的影响,对于底层技术的研究缺乏动力。

7

如今的IT行业属于香饽饽,程序员也增多了。你说的谈论spl这类东西,应该是后台服务程序员,那么为啥很少讨论路由、操作系统呢?从两个方面说说我的看法。

语言与操作系统无关

拿java来说,它是跨平台的,因为jvm的存在,所以在开发的时候不用考虑平台,对操作系统也只是了解阶段。只需注意平台特性,去做相应配置。比如Windows平台,需要配置环境变量等等。程序员精力也是有限的,用不到的或很少用到的,了解就够了,不会去深入研究和讨论,当然对系统感兴趣的程序员就另外说了。


网络框架层级不同

程序员所讨论的sql、并发、框架、架构之类的,从ISO模型来看,属于应用层,而路由属于链路层,一个偏硬件,一个偏软件。我们接触比较广泛的就是应用层面的程序员,所以会感觉讨论比较多的是sql之类的知识。硬件方面的知识,实践起来比较难,所以一半不怎么讨论,都是写文章交流经验。不像软件,实践容易,且软件实现方法更多不唯一,这也是讨论比较多的一方面原因吧。

8

为啥厨师都讨论刀工,油温,火候,而不讨论如何养猪,喂鸡,如何种植各种蔬菜,你说怪不怪?

9

因为各种框架架构很虚啊,比较容易吹牛逼啊,网络操作系统又要理解很多理论又要会操作,大家都会避之不谈。Talking is cheap,show me the code!大概可以这么理解了!

10

因为这些程序员把自己定型为开发人员,有些人把自己定型为老板的万能工具箱,从设计,到开发,到搭建,到维护,搞不好还得做点进攻啥的...你可以理解成一个拿着ccie(routing&switching),大学学的是EE+Computer Science,做着从ic设计到telnet去core switch的事情...工程这边从layer1-4你都要会干,包括走线...应用这边就是数据库,网站,程序...也要参与开发...最后还得维运...八个机柜包括里面的东西我指的是0/1都是你的事,对了还包括整个公司的监控和access control也要你维护,因为别人也不会啊,老板又不想多花钱

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章