从忽视到信仰
novakon2016/10/22软件综合 IP:广东
对于很多Linux用户而言,这个开源的操作系统是一种信仰;
而对于计算机世界之外的人来说,Linux是一种被忽视的存在。

我5年前在这个论坛曾经喷过一次Ubuntu Linux——因为我发现无论是硬件还是软件,它对各个方面的支持都不如Windows——浪费了我大量时间去安装、测试、卸载它。我不理解为什么会有人把这种系统作为自己的信仰。

彼时我只不过是个普通的计算机用户。从我们这代PC用户的角度出发,任何无法“装好就用”的东西,都是违背人性,要遭天谴的。

----

那么4年之后呢?
接触开发行业之后,我发现,普通程序员其实很容易满足——给他库和文档,还有大量的时间就可以了——但是当一个程序员,希望用自己的力量,去解决一些前人没有解决过的问题的时候——他需要一些真正好用的工具。

好用的工具在哪里?如果一个问题已经被解决过无数次,那么最好用的工具,通常总是来自行业内经验最丰富的厂商。just spend your money。

如果一个问题还没有被人解决过呢?那么针对这个问题的专用工具,往往是不存在的。遇到这种情况,程序员就得把手头现有的工具凑起来,设计一套新的工具,再去解决问题。

这时,商业方案就令人头疼了——因为代码的不开源,有时会遇到一些无法通过的障碍;因为协议条款限制,开发出来的东西不能随便传播运行。这种“不方便”,【普通程序员】是可以忍受的;而像我这样的【终端用户】,则几乎不会察觉。一个普通的iPhone用户,是无法体会AppStore的发布流程有多么恶心的。

于是当年的我口出狂言,说Ubuntu sucks。然而让今天的我感到心凉的是,当年竟没有一个回复,能够用令我信服的语言,纠正我的幼稚想法。
毕竟,KC群众中的【终端用户】和【普通程序员】,比例要远高于【优秀程序员】。当年的我并不知道这一点(当年虽然写过一些软件,但并不了解这门艺术、这个行业),只能说自己实在太短浅、太粗鄙。

也差不多是同一段时间,一部分有【信仰】的编程爱好者从KC消失,留下那些仍然【忽视】着的同学。

于是今天的我只能通过在youtube上大量补课,对当年的忽视,进行自我纠正(我专业是学电的,不是学计算机的)。数据结构,操作系统,流式处理,消息队列……在这个过程中,我“遇见”了无数来自斯坦福、伯克利、MIT的教授,跟着他们的思路一个小时一个小时地走下去。

苦学一个月,感悟如下。

----

1. 计算机科学作为一门自然科学,当然是违背人性的(见刘虎《科学的反人类本质》),因此无法通过条件反射训练直接习得,而必须在一定的数理逻辑基础上,由老师带领学习。计算机科学经过半个世纪的发展,分支门类广为增加,基础理论的重要性也日益提升。如今在未完成【计算机科学专业课程】的情况下成为优秀程序员的可能性,要远低于当年【比尔盖茨=>微软】。

2. 兴趣和好奇心不是决定性因素。计算机科学是很酷的学科,不管是内容本质,还是薪资待遇都非常吸引人,对计算机科学感兴趣的人,几乎包含了每一个计算机用户。作为这个世纪普及度最高的通用工具,可以说每一个拥有计算机的人,都对计算机的原理感到好奇。从行业从业者的学历统计结果来看,真正的决定性因素,仍然是【是否完成了计算机科学专业课程】(当然,不一定非要在大学里完成)。

3. 对1和2的推论是,(与许多普通爱好者常识相悖)如果一个计算机编程爱好者没有完成相应专业课程,他几乎很难在本领域有任何建设(而不是作出微小的贡献)。
诚然,对于许多爱好者而言,计算机程序设计是一件很惬意的事情——写一点代码,就能解决一些问题(看,我写了个计算器APP);然而绝大多数时候,这些问题通常都是前人已经解决过的,它们不属于贡献。而在开发过程中遇到某些前无古人、后无来者的bug时,这类爱好者往往会手足无措,堵在路上(许多arduino爱好者最终放弃的原因)。

因此,如果真的想解决前人所没有解决过的问题(也就是那些真正棘手的问题,比如帮富士康拧螺丝,帮袁隆平选水稻),就必须要求程序员对计算机科学领域的一些世界观、方法论非常熟悉,从而能够判断新猜想、新实践的可行性、可靠性,提高解决问题效率。而这些世界观、方法论,正是计算机科学教育的精髓所在。而这一点,对于没有接受过计算机科学专业教育的人来说,是无法想象的。你无法想象你没学过的东西对你有什么用。

说到这里,就不难理解为什么Linux会被很多人当成信仰——因为它是学习现代计算机操作系统架构的免费教科书,是计算机科学教育中不可或缺的一环。

信仰的力量,在不受强权压迫的地方,尤其强大。linux已经成为了服务器操作系统之王,因为服务器只跟具备【信仰】的人士打交道,而不需要照顾那些充满【忽视】的用户。

----

未来社会的高度分工,决定了我们中的大多数人,将日复一日地,为那些忽视技术细节的用户,提供充满信仰的技术产品和技术服务。对【术业有专攻】的忽视,让我浪费了许多时间,也给我上了宝贵的一课。

[修改于 8年2个月前 - 2016/10/22 16:00:54]

来自:计算机科学 / 软件综合
4
2
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
熊猫阿Bo
8年2个月前 修改于 8年2个月前 IP:德国
827244
作为Linux用户以及开源的支持者,我一直觉得使用Linux是个人的事情。每一个人有自己的需求和感受。

在使用Windows平台多年,遇到了各种因为软件授权而带来的让我厌恶的种种之后。我开始转向开源,并逐渐在各种场合使用Linux。

在不久前看到了楼主对Linux的嘲讽贴后,虽然很理解楼主使用Linux时所遇到的苦恼,毕竟每个人对同一个东西的看法和体验还有需求都是不一样的,但是不会动摇我自己对Linux和开源的热衷,或许是因为如楼主在前贴所述,我可以接受需要自己动手去部署自己所需要的东西。而正因为我经历了自己动手部署的过程,我可以知道假如发生某些事情,我可以回忆自己部署的过程而猜测可能发生了什么,并以其为指导找出问题所在并尝试解决。也有网友看了楼主的帖子后给出了“更换平台必然会带来效率的严重下降,这是意料之中的事情”的评价。

在众多工具中寻找、了解适合自己的工具,会因人而异。虽然前贴因为论坛版块更改而进入了我的视线,但前贴年代略微久远,我无法回帖反驳,很是遗憾。毕竟因人而异的东西非常主观,反驳或许不会有益处。许多论坛也有禁止翻老帖的禁忌。

我很遗憾。

以上是我的看法。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
acmilan
8年2个月前 修改于 8年2个月前 IP:四川
827256
linux的优势是伸缩性很强,实际上很适合学东西,只是以前写个窗口拿windows下无法运行,装x不方便,现在都用安卓手机了,会写个窗口已经不稀奇了→_→
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
我说要有光
8年2个月前 IP:河北
827265
Linux在服务器领域的成功更多来自习惯而非信仰,它的生态系统历史远比想象中久远。早年的服务器设备都是用Unix操作系统的,后来Linus搞出了PC机上跑的Unix也就是Linux,于是那些原本运行在Unix上面的专业软件就这么流传下来了。

在另一侧,微软的Windows最早是来自于DOS操作系统,自诞生起就是为PC特化设计的个人消费品(有着如大小写不分,根目录奇葩等等特性),与原本的学院派Unix系生态系统一直难以兼容,所以才面临服务器领域针插不进水泼不入的结果。反例如IBM的AIX和HP的HP-UX,虽然同是闭源商业操作系统,却一直在高端服务器领域占据了一定份额。

另一个由于生态系统而成功的例子也来自微软,就是Win32API,这个生态系统已经在PC领域根深蒂固到微软自己都杀不死的程度了,从当年的.net1.0一直围剿到WinRT的大失败,Win32API始终牢牢把控着PC的客户端。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
lvsoftII
4年9个月前 IP:上海
873992

科创新人,linux老用户,我来这里的第一贴,自然是要写linux的。楼主的帖子写的蛮打动我的,但这似乎并不是在写Linux,更像是在写CS。那么我来稍稍讲讲Linux代表的是什么吧。


从windows推出.net准备一统天下的那一刻,我就删掉了windows,彻底倒向Linux。是的,用于桌面,在那个连显示中文都要折腾很久的时代。所以很遗憾楼主发表对linux的嘲讽贴时我还不知道这里,其实ubuntu已经是对新人极端友好,各方面都以对标windows为目的做到最好的发行版了。老linuxer是不太喜欢ubuntu的,太过于商业化,和开源信仰不符。我个人最喜欢也一直在用的,还是ubuntu的祖宗:Debian。


任何时代总会有一小撮愿意探索未知,挑战自我,挑战权威,对这个世界充满好奇,对未来无比乐观的开山人。他们是15世纪发现新大陆的哥伦布,是16世纪是挑战教会种下科学种子的歌白尼,是17世纪是奠定现代科学基石的牛顿,是18世纪开启工业革命的瓦特,是19世纪吹响现代物理学先声的麦克斯韦,是20世纪奠基物理学大厦的爱因斯坦和波尔。且不说这些代表一个时代的巨星,我看了下活跃在科创这里的很多人,也都属于这类新星,大概起码也是个普通人眼里的异类吧。


在20世纪末期,计算机从要好几个房间这么大的大型系统不断缩小,终于到了可以放在桌子上的微型计算机这一步。计算机开始普及到一般民众,即将进入爆发的前夜。此时计算机应用领域还处于天地初开,一片混沌的状态。有一个年轻的异类叫Bill Gates,和他伙伴Paul Allen成立了一家叫Microsoft的公司,为第一个商业上获得成功的个人电脑Altair写了第一个Basic解释器,随后就被各爱好者疯狂盗版...Gates很生气,写了一封非常著名的信《致爱好者的公开信》。信中他发出了“谁会从事专业的软件开发却分文无获?哪有业余爱好者会花费3人年的精力去编写软件,去修正软件,编写使用手册却免费发放给别人使用?”的灵魂质问。在那个时代,没有现在随手可得的开源项目,开源这个概念都没有被发明,甚至开源运动的精神领袖,此时也还在MIT的实验室里为他准备开始写的文本编辑器想个好名字(也就是日后大名鼎鼎的EMACS)。虽然CopyRight的历史要早的多,但在我看来,这封信是就是软件领域CopyRight的标志,让世界意识到软件这种无形的东西和一件有形的艺术品等价。微软从这个事件开始,随着计算机行业一起开始起飞,日后成为这个行业中CopyRight的一面旗帜。


在与微型机对应的小型机领域,此时发展多年的Unix,集成了TCP/IP,并用C语言改写,使得它具有极好的兼容性和强大的联网能力,迅速占领了市场。Unix、TCP/IP和C语言,在计算机历史中互相促进互相推广互相普及,从此奠定了驱动我们现代社会的三大核心支柱:POSIX兼容的操作系统,TCP/IP网络协议,开发各种基础设施的C语言。进入80年代后,Unix开始陷入商业版权和专利纠纷。这场纠纷使得Unix的发展陷入停滞,没有将足迹迈入新兴的微型机领域,微软用收购来的DOS占领了这块快速发展的新兴市场。于此同时,前面说的那个还在考虑自己的文本编辑器名字的人,也开始遇到了商业的侵蚀。快速发展的软件产业席卷了MIT,他所在实验室中的很多黑客朋友被一个个的高薪挖走,他所在的实验室运转不下去了,他感觉到他真正的敌人并不是某个商业公司,而是整个不开放源码的商业软件产业。于是这位最后的黑客站了起来,他叫Richard Stallman。他察觉到了专利制度和商业版权对知识自由的侵害,创办了自由软件基金会,准备以一己之力,创造出整个完整的,开放的操作系统生态,这就是著名的GNU系列。并为了防止商业软件窃取,创造了CopyLeft概念,以及著名的GPL版权。随后他以一人之力,创造了emacs,gcc,gdb等等核心工具链。随着其他更多爱好者的加入,GNU逐渐成为包含了上百个组件的日趋完善的操作系统生态。此时,操作系统最重要的组件,内核依然缺席。Richard Stallman规划的Hurd,因为规划的目标太大,进度缓慢始终无法稳定运行。此时,又有一位异类,Linus Torvalds站了出来。


Linus做Linux的起因很简单,他买了台386电脑,他想有搞套免费的操作系统,仅此而已。如果不是Unix的商业版权纠纷带来的停滞,Unix的一个BSD分支就会有386支持,那么Linus本人表示会直接加入BSD开发,不会去折腾什么自己的操作系统。就算是自己折腾,他一开始也只是想基于Minix改造,但Minix的作者拒绝了他的请求。所以他最后没有办法只好自己写一套内核,让我们来看看一切的开端:

我在做个(自由的)操作系统(就是个兴趣爱好,我不会搞得像GNU那么大那么专业),打算让它工作在386 AT平台上。它从四月就开始酝酿了,马上就快好了。我想要那些喜欢或不喜欢minix的人的意见,因为我的系统和它有点类似(同样的文件系统的物理布局——由于实际原因——还有些其他的东西)。

我现在已经移植了bash(1.08)和gcc(1.40), 而且看起来奏效了。这意味着我会在几个月内得到一些实用的东西。“……”是的——它没有任何minix代码,并且它有一个多线程的fs。它可移植(使用386任务切换等),而且它可能永远不会支持除AT硬盘之外的其他东西,因为我只有这些:-(。

“……”它基本上是用C语言写的,但是大多数人可能不会把我写的东西叫做C语言。它使用我能找到的386的每个可以想象的特性,因为它也是一个教我关于386的功能的项目。我前面提到过,它使用内存管理单元来进行分页(还没实现到对硬盘的功能)和分段。这个分段功能使得它真正的依赖于386(每个任务都有64Mb的代码和数据段——4Gb中最多64个任务。如果有人需要超过每个任务64Mb的限制,那将是个麻烦事)。“……”我的一些C语言文件(特别是mm.c)几乎用了和C一样多的汇编。“……”不像minix,我也碰巧喜欢中断,所以中断将在不试图隐藏背后的原因的情形下被处理

虽然最初的Linux是如此的简单,Linus本人也没啥野心,但这刚好成为完成GNU体系的最后一块拼图,使得GNU可以脱离Unix的版权依赖,独立运行。种子开始生根发芽。


之后事情的发展就如光电火石般迅速,90年代是计算机发展极为快速的时代,互联网的爆发,信息时代的到来,信息的爆炸,这是和工业革命一样跨越时代的成就。Linux以及整个GNU系列在众多爱好者的加入下越来越复杂,越来越专业,站在浪潮之巅享受了快速成长的红利,也成为开源软件、知识自由的庇护所。在Gates写了《致爱好者的公开信》的15年之后,以GNU和Linux为首聚集起来的黑客群体对这封信中的灵魂质问做出了有力的回答。在此后很长时间内,微软和Linux都是死对头,微软在内部会议中把linux认定为头号敌人,Linux则以Ubuntu为例,其第一个Bug是Microsoft has a majority market share


现在已经2020年了。现在的微软变得我都快不认识了,兼容Linux,拥抱开源。Windows和Linux的斗争已经不再像以前那么重要了。PC的规模也早已被手机平台碾过,但也许现在人们并没有意识到,Richard Stallman作为最后的真正的黑客,作为一个思想家,留给世界的财富。


科创有很多个不同领域的玩家,其实仔细想想,每个行业,都存在着大大小小深如鸿沟的壁垒。比如想搞电路,有些芯片很难买到,有些资料要签NDA才能拿到,有些设备或者工具需要支付与成本明显不符的巨大金额。每个行业都存在大量的商业行为,而商业行为的做法最终都会收敛如此,设立一座座堡垒,形成一个个孤岛,组成一队队联盟。Unix时代的专利和版权纠纷即是如此,可以说是版权制度最恶劣的应用之一。AT&T公司并不关心Unix的发展,Unix是个人项目,并没有占用公司太多资源,销售Unix的盈利在整个公司中占比也几乎可以忽略不计,公司拥有的也只是BSD系统中千分之一代码的版权。但AT&T为了打击对手,以一个微不足道的理由,为了一个自己根本不在乎的产品,发动了一场损人不利己的战争,造成了Unix在计算机技术最为黄金时代的停滞。


现在,我们享受开源带来的巨大便利。这种便利,发生且仅发生在IT行业中。没有其他任何行业,会拥有IT行业如此多的选择,如此低的门槛,如此快速的发展,如此丰富的信息共享。这就是以Linux为标志,以开源精神为核心的信仰。

引用
评论
9
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
所属分类
上级专业
同级专业
novakon
学者 机友 笔友
文章
1256
回复
8386
学术分
16
2008/03/29注册,2年10个月前活动

已走,勿送

主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}