良许Linux教程网 干货合集 上古时期程序员在没有 Google 的情况下怎样编程的?

上古时期程序员在没有 Google 的情况下怎样编程的?

在计算机刚问世之时,互联网尚未普及,更不用说IDE、丰富的在线文档、Google和Stack Overflow了。那时的程序员是如何编写代码的呢?

前几天我看到一篇国外老哥写的非常有趣的文章,讲解了这个问题。这里我将它翻译过来,注意,本文有所改动,以下为正文:

关于古代程序员编程的话题,我想我应该从头开始讲起。当我开始编程时,使用的计算机是这样的:

image-20230606213129142
image-20230606213129142

是的,你没有看错,当时的计算机没有键盘也没有鼠标,你能看到的只有一些开关和灯,那么你怎么知道该打开或者关闭哪些开关呢?以及它们的含义是什么?你可以参考这本书:

你可能会问没有键盘也没有鼠标,那么程序写在哪里呢?很显然你需要一些朴实无华的介质:

image-20230606213136817
image-20230606213136817

当想用代码解决某个问题时,你必须手写汇编代码,然后纯手工在内存中找到存储数据和代码的位置,即人工寻址,而且你的内存只有1024字节,这在现代程序员看来简直不可思议。

这还不算完,写好代码后还需要手动转为十六进制,检查无误后输入到这台设备运行。

这一时期根本没有像现代的磁盘一样的持久存储设备,当然,除了纸之外,每次运行程序时你都需要手工输入这个设备,注意,是每一次,不过这个时期很快就过去了,纸带的时代到来了。

image-20230606213140438
image-20230606213140438

这东西噪声很大,也不可靠,但比每次纯手工输入好多了,那时打印机以及键盘还没有什么用,然后我自己制作了一个IO卡,接到了这个小东西上面:

image-20230606213143884
image-20230606213143884

可以用磁带加载以及存储程序,足足每秒有110比特,简直神速,不过这个过程依然很痛苦。

后来BASIC让编写真正的程序成为可能,磁带开始真正地存储程序,在大学里你开始能见到这些东西:

image-20230606213147729
image-20230606213147729

还有很多的这个:

以及很多很多这样的书:

image-20230606213154637
image-20230606213154637

需要持久保存的程序开始放在装满打孔卡片的盒子里,这一时期你依然不能在机器上写代码或者调试代码,调试代码需要人肉debug——在你的大脑里运行代码,而不是在计算机中,改一下代码到看到运行结果的时间以小时计算。需要的资料多得惊人,在某计算中心有一整间屋子用来存放关于计算机系统方方面面的资料,从地板堆到了天花板。

我个人则有60多本书,涵盖了一些编程语言的实现细节,还有关于操作系统以及课程所需要的教科书等。

这一时期根本没有现在的在线社区,最接近Stack Overflow的就是跑到办公室的公共空地上对所有人喊一声“谁知道某某某是什么意思”,然后内心期待着没有人会因为这么简单的问题嘲笑你。

之后这个东西出现了:

image-20230606213158180
image-20230606213158180

而且能连接到:

image-20230606213201952
image-20230606213201952

更棒的是,这堆由开关组成的东西上运行着:

image-20230606213205617
image-20230606213205617

是的,运行着Unix!

现在你可以把程序保存在计算机上,当你写代码时可以在屏幕上看到,而且还能在计算机上实时地编译和测试,是实!时!的!,这简直就是程序员的天堂,难怪那时我写了那么多的代码。

之后,“互联网”,好吧还不是现在的这个互联网,而是USENET出现了,你可以在新闻组以及ARPAnet邮件列表里喊一声“谁知道某某某是什么意思”,当然你依然会在内心里期待没有人会因为一个显而易见的问题来嘲笑你,此时会有一些来自MIT(麻省理工)、或者CMU(卡内基梅隆大学)以及Berkeley(伯克利)的家伙回答你的问题。

这之后计算机革命开始了,我的故事也讲完了。以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部