- 主题:语言的争论有结论了吗?
哈哈,说得好。
生意人在技术上是没有价值观的,这也是他们能在商业上取得成功的一个原因。
生意人还有一个优势能使他保持对技术的中立,就是他不直接和技术打交道,他是做决策的,与资金和人力安排打交道,具体与技术接触的是那些一线的基层员工。
码工如果没到生意人那个层次,整天与技术打交道,不可避免地对技术有所偏好。一个对猫很有感情的人,是不可能达到"黑猫白猫,抓住老鼠就是好猫"的境界的。
【 在 siegfried415 的大作中提到: 】
: 有话语权的人从来不关注哪个语言更好,能为他们挣钱的语言就是好语言,关注哪个语言好的都是地青,因为这是他们信心的根源,也是他们恐惧的根源。
: 这大概类似于爱迪生和特斯拉为了直流电和交流电争的你死我活,但对摩根来说,这根本不是事,无论谁赢都不影响他赚钱。。。
: 语言也是,三十年河东,三十年河西
--
修改:seablue FROM 185.92.24.*
FROM 185.92.24.*
对我来说,前辈以自己的青春避免了后辈走弯路。
可贵。
【 在 siegfried415 的大作中提到: 】
: 我已经到了知天命的年纪了,在我年轻的时候,也像你们一样喜欢摆弄各种语言的小技巧,我甚至还实现过一个比C语言还复杂的DSL,希望能把状态检测真正代入到攻击检测中,但是我所在的公司在产业界没有这种影响力,老板又不同意开源,做规则的同事又不思进取,在他们眼中Snort规则就是圣经,对于超出Snort的描述能力的攻击,他们既没能力、也没有兴趣去验证,所以,这门语言虽然还在一些设备上跑着,但是对于我来说它早就死掉了。如果你理解了我的经历,就知道我为什么会对语法不感兴趣了,因为这些东西和一门语言是否能获得成功几乎没有任何关系。。。
:
--
FROM 60.251.47.*
是的。
项目负责人只决定采用哪个平台(pc ios android)、哪个框架(桌面app,html5,flask, vue.js),哪个数据库,哪个服务器(sqlite,apache),一旦这些被确定了,用什么样的语言基本就被框死了。
而不是反过来,像基层某些语言爱好者,先基于某个语言,然后再考查这个语言周边有什么第三方的东东,然后再考虑能做出什么东西。
这是两种不同的选择方式。
一种是先选好生态,用哪门语言是顺理成章的事。(永远随大流,没有前瞻性,稳妥不冒险,在技术变革剧烈的时代,采用的那套技术有可能很快被淘汰,但是因为负责人不直接接触技术,所以码农们的吃饭技能被淘汰与他无关。(e.g perl、delphi))
一种是先限定语言,再看看用它的周边生态能做出什么。(有创新、引领潮流的可能,更有可能是寂寂无名)
作为一线的码农,我非常理解为什么码农那么热衷讨论具体语言的优劣。因为具体的语言对他们的幸福影响太大了。从我学计算机第一天起,无论是在教科书上还是在课余(网上)讨论或是在工作后,我都被不断告知一个根深蒂固的观念:具体的语言是无关紧要的,牛人能在一/n个星期内切换过去。
可是随着工作经验的增加,我越来越觉得,这样根深蒂固的观念是错的。长期使用一门语言,人怎么可能不对其产生偏爱?人都是主观的、有感情的,人会对无情的规则产生感情。小到括号的具体位置,循环的具体写法,大到库的用法,还有操作系统(linux vs windows)、ide的补全方式,你天天在使用,怎么可能一下子就忍痛割爱切换到别的平台?你越熟悉旧的平台,切换到别的就越痛苦,甚至可能根本就换不过去。在《理解媒介》这本书中,作者说媒介本身就是一种很重要的信息(我们不能说报纸、网页因为写的是同样的文字,那它们的区别是不重要的)。怎么能忽略媒介直接说目的才是重要的,用什么样的语言不重要?说这话的人根本就忽略了人性,是一种很无情的说法。
别的不说,就拿python2换到python3来说,2008年python3就发布了,直接到12年后才把python2淘汰,python社区本身的设想是2015年就淘汰python2,但是不得不一再推迟。很大一个原因就是人们不喜欢新的写法。print语句加上括号不知道被骂了多少次。更别说从别的语言换python,有多少人不习惯它的强制缩进,因为这个放弃python的大有人在。有多少人因为熟悉了perl想换到python不成功,就是因为不习惯这个不习惯那个,最后变成了python黑。这难道能像课堂上讲的那样---具体的语言不重要吗?连一个语言的不同版本都这么重要,能被不同的人群撕扯这长时间,那不同语言之间的切换必定是相当相当痛苦的。
类似地,从读报纸来获得新闻,到读网页来获得新闻,这个切换过程想必也是相当痛苦的,虽然这两者对我们这一代来说可能没什么区别。类似地还有100年前从用毛笔写字切换到用钢笔写字、50年前用钢笔写字切换到用圆珠笔写字、用笔写字到切换到用键盘打字、南方人吃北方的饭、北方人吃南方的饭等等。
熟悉的语言就像人们的故乡,越是老人越喜欢待在故乡,故乡对人有极强的粘性。要破除这种粘性,或许我们压根就不应该与具体的语言接触,与管理者持相同的思维或许是最轻松、最不怀旧的。(或者像那些压根就不搞技术的人一样,比如女人,谁见女人们对选哪个语言有什么讨论吗?没有。因为女人压根对技术不感兴趣,她们只是把电脑和网络当工具来用。)
【 在 siegfried415 的大作中提到: 】
: 项目技术上成功,主要是采用的技术体系,然后是架构和平台,最后才是语言,而且往往架构和开发平台决定了,语言也就决定了。。。
:
--
修改:seablue FROM 106.121.138.*
FROM 60.251.47.*
【 在 Dieken (风催草低 - 明月何尝不照人) 的大作中提到: 】
: 管理角色的人压根不关注技术,更别提语言了,能快速出活,能容易替代人是他们关注的。
: 关心架构、框架的是中层,他们也不太关心语言,反正不写代码。
: 最关心语言的是底层,天天用的工具能不关心么。
: 语言很重要,语言影响思维,进而影响架构和框架,你要理解一个不写代码的人是不理解这种事的。
是的,语言影响思维。如果特别熟悉一门语言,切换到别的语言甚至会影响幸福感。包括大括号的位置、缩进的多少、命名规范(匈牙利vs驼峰vs下划线)等等细节。
这就是为什么python社区现在不敢大动python3了,其实他们仍然觉得现在的py3有很多值得改进的地方,但是怕破坏兼容性,只能小幅改...
假如现在推出python4,我估计他们会被骂死。
--
修改:seablue FROM 60.251.47.*
FROM 106.121.138.*
c#在linux平台上基本就是残次品
【 在 fanci 的大作中提到: 】
: 我以为所有领域第二好的语言是C#。干啥都还行,但都不太行。
--
FROM 106.121.5.*
这还用细说?
问问你周围的人(或本版的人)有谁在linux上用C#写过正经的东西吗?
linux上有啥值得称道的软件是用C#写的?
再看看自己是不是在linux上用C#,不就得出结论了吗?
【 在 keygen 的大作中提到: 】
: 怎么残次法?愿闻其详
:
--
修改:seablue FROM 60.251.47.*
FROM 60.251.47.*
我正好是从2004年开始接触python的,当时还是2.4
当时perl余威犹在,在perl和python之间纠结了一段时间,最终选了python
【 在 iMx 的大作中提到: 】
: python,90年发明,凉到2004
:
--
FROM 60.251.47.*
ruby是真凉了。以后也不大可能再热。
【 在 hemin 的大作中提到: 】
: 这些都没有凉过。
:
--
FROM 60.251.47.*
从100台到30台,仅仅这样节省成本,我觉得得不偿失。不用换语言,可能过个三五年,硬件成本就降下来了。
我觉得,至少得有一个数量级的节省,才值得考虑换语言。
因为换语言(python换到go)导致的人工效率下降实在是太厉害了。程序员的人力资源比硬件更宝贵。
如果因为python类型问题,项目过大不安全,调试维护困难,这个可以考虑换一个类型安全的语言。
cpu和内存的效率问题不应该是一个值得考虑的问题。
【 在 hemin 的大作中提到: 】
: 我们参与的项目,用python做服务,需要100多台服务器
: 后来换了go,只需要30台服务器
: 换语言开发效率低一些,研发投入有代价,但综合各种成本来看,总体节省了资金。
: ...................
--
修改:seablue FROM 60.251.47.*
FROM 60.251.47.*
我也是这感觉。
【 在 hemin 的大作中提到: 】
: python是慢慢热起来。
: 还没有凉过。
:
--
FROM 60.251.47.*