漫画 | 一个养活了4代程序员的男人!

1996年一个普通的下午, 36岁的安德斯坐在自己的办公室中,陷入了沉思。

04d87517e3c450007b6197864adf74cb.jpeg

这天中午,安德斯和比尔·盖茨一起吃了一顿午饭

8d156fd1937cff9cd4d8b2e59f5e7418.jpeg

一边是比尔盖茨开出的难以拒绝的条件,一边是自己有着深厚感情的Borland,安德斯很难下定决心......

ace7a0c12b8bccd697aa166777251797.jpeg

1960年,安德斯出生于北欧小国丹麦的哥本哈根。

北欧是个神奇的地方,诞生了好几位软件行业的大神。

45a3110f5cd541e6506d85336527b0db.jpeg

很快,安德斯也会成为他们其中的一员。

安德斯在高中时第一次接触到了计算机,老师教他们学会了ALGOL编程语言。90eaa954518eaa0c32947ad9504ad7ef.jpeg

安德斯展示出了自己的天赋,他学得飞快,两个星期以后,他就可以反过来帮助回答老师的疑问了。

上了大学以后,他和同学开了哥本哈根第一家电脑商店。

5dabb94529e9171a19a3783aee4c377c.jpeg

近水楼台先得月,安德斯在这些电脑上写了很多程序。

他最早用Basic,可很快就觉得Basic太简单、太无趣了, 他便开始目光转向最底层的编程。

0b661214c2d53cd23e9c1b0cba6a99da.jpeg

说干就干,安德斯很快就用汇编语言写了一个,只有12K,安德斯把它放到了ROM中,开机可用。

1982年,安德斯又把它移植到了CP/M  和 DOS上。 这个编译器被称为Poly Pascal, 因为此时安德斯的公司叫做Poly-Data microcenter。

1c8244ae38cbe8c4ed0d9cdebd13ec69.jpeg

可惜,安德斯是个技术天才,在商业这一块儿并不擅长,Ploy Pascal一直没有火爆起来。

直到有一天,他遇到了一生的挚友Philippe Kahn

f9f83ca5034473a6f8bfc74aebaf4d95.jpeg

Philippe Kahn在安德斯写的编译器的基础上,又添加上了编辑器,做成了一个IDE, 这就是传奇的Turbo Pascal !

46b5f4e20433a06d88b7406759395f40.jpeg

Turbo Pascal 只需要33K内存就能运行!

更厉害的是,Philippe Kahn给它制定了一个击穿底线的价格。

3c5cc075a336ba613e7d38c3db913f3d.jpeg

伴随着Turbo Pascal 的大卖,安德斯版税分成也拿到手软,也成为了百万富翁。

可以说,安德斯凭借Turbo Pascal 一战封神!

d27f2d227ee1c82dcc6f9e3ebe0b12b0.jpeg

1989年,安德斯的公司PolyData遭遇了严重的财务问题 ,这再次证明,他不是搞商业的料。

他决定前往美国加州,加盟好基友Philippe Kahn创立的Borland公司,成为首席架构师。

8a529b03057cd5b09b2dc1bb4c4c5ed2.jpeg

在Borland,安德斯继续开发Turbo Pascal的编译器,累计销售了数百万套。

但是随着C/C++和Windows的流行,Turbo Pascal逐渐走上了下坡路。

c1be9a3b2a1962e1dff26ed43eb84b70.jpeg

这时候安德斯看到了微软Visual Basic的成功,他召集了一个小组,决定对Turbo Pascal做一番脱胎换骨的改造

7de672ef85839f9c47cc369854b25de7.jpeg

这个战斗力超强的小分队很快就把第一个版本给开发了出来,1995年,经过大规模的Beta测试以后,Delphi 1.0 正式上市, 一炮走红,全球狂卖50多万套。65f1be68707cb6b2f92e0dcf9178850d.jpeg

有人的地方就有江湖,有江湖的地方就有分歧。

在Delphi后续版本的规划中,安德斯和其他成员产生了不同的意见

1b232a7cca40846749e73f029d0a7c8b.jpeg

很不幸,Zack的想法得到了公司更多的支持,在Delphi 3.0 开发的中后期,安德斯逐渐边缘化了。

71074b2049eecd6c840907ff7461cae0.jpeg

加上好基友Philippe Kahn的离职,安德斯感到自己在Borland并不是无可或缺的人物了。

于是便发生了文章开头的一幕。安德斯决定,加入可以让自己任意发挥的微软。

632ebcb87da4dbd1ef5412ef1517b3e2.jpeg

1996年的微软正是如日中天,刚刚发布革命性的Window 95 ,其轰动程度不亚于Apple发行iPhone,微软当年对程序员的吸引力,就像如今的Google,Facebook那样。

在牛人堆中,安德斯迅速展示了高人一筹的实力,他带领团队进入Java IDE领域, 开发出了Visual J++

6a1e4540bb8de1395f280a71fab1c064.jpeg

Visual J++的所作所为惹恼了Sun公司

081b197ab988379183bf8393fddf57c7.jpeg

微软输掉了官司,被迫停止Visual J++的开发。

比尔·盖茨决定另起炉灶,建立和Java竞争的生态系统:.NET。

在.NET中,安德斯制造了一个重磅炸弹:C#

15f5a626d3e813b984514eb6a19cad5a.jpeg

平心而论,安德斯设计的C#在很多方面都优于Java, 但是Java有着开放的生态,众多厂商的支持,还是占据了优势。

cfe1fae6c476c428ca5eb2ea996a61d8.jpeg

大概在2010年左右,微软出现了新的危机:专注于Web标准,V8 JavaScript引擎 + Chrome 彻底击败了微软的IE,赢得了浏览器大战。

ae55f25a7bf936d0f01435c37f130f1f.jpeg

安德斯发现,JavaScript这门动态类型的语言对于IDE来说并不友好,缺乏静态类型让JavaScript开发大项目的体验并不好。

5daaaf677a5a151c322d1bb5f2628bcb.jpeg

这个新的语言就是著名的TypeScript, 它是JavaScript的超集,在编译时,TypeScript会删除所有类型并将代码还原成JavaScript。c2d39dab1d654e272e401f5158674bb2.jpeg

从Turbo Pascal ,到Delphi ,再到C#, TypeScript, 安德斯的每一个作品几乎都是别人的终生成就。

夸张一点说,安德斯的作品养活了四代程序员。

有人说,安德斯没有原创性的发明,他只是个编程语言的改进者,但是安德斯精通程序语言、编译器技术、开发工具、Framework以及系统架构,软件界有很多重要的人物和好手,但是尚不知有任何人能像Anders一样在这么多领域都能成为大家。

安德斯就是程序员之神!d37ca631cd42d5fce97c293a017d39e4.jpeg

后记:40年前,安德斯和菲利普·卡恩发布了Turbo Pascal,这是一个里程碑式的产品,是第一个流行的集成开发环境(IDE),它在当年的成功让人难以置信。

祝 Turbo Pascal 40 岁生日快乐!旧文重发,以示纪念。

近期精彩:

巴西都发明两门流行的编程语言了!

继Linus之后,又一个动辄就“F**k You”的技术天才和营销大师出现了!

世界最强计算机,极少人见过,让程序员高薪工作一辈子!

这个波斯人的名字,成了无数程序员的梦魇!

四次刮骨疗毒,苹果是无可争议的卷王!

  • 76
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
什么是⼤数据开发?⼤数据开发要学什么?⼀个Java转⾏过程 和经历 ⼤数据开发是⼤数据职业发展⽅向之⼀,另外⼀个⽅向是⼤数据分析。从⼯作内容上来说,⼤数据开发主要是负责⼤数据挖掘,⼤数据 清洗处理,⼤数据建模等⼯作,主要是负责⼤规模数据的处理和应⽤,⼯作主要以开发为主,与⼤数据可视化分析⼯程师相互配合,从数据 中挖掘出价值,为企业业务发展提供⽀持。 知道了⼤数据开发是什么,那么如果想要从事⼤数据开发的⼯作,需要学什么了。 下⾯我们以⼤数据开发课程为例进⾏说明:关注作者:需要⼤数据⽅⾯的学习资料,关注获取 阶段⼀:JavaSE开发 阶段⼆:JavaEE开发 阶段三:并发编程实战开发 阶段四:Linux精讲 阶段五:Hadoop⽣态体系 阶段六:Python实战开发 阶段七:Storm实时开发 阶段⼋:Spark⽣态体系 阶段九:ElasticSearch 阶段⼗:Docker容器引擎 阶段⼗⼀:机器学习 阶段⼗⼆:超⼤集群调优 阶段⼗三:⼤数据项⽬实战 总结下上⾯的课程内容,⼤数据开发需要学java、linxu、数据库、hadoop、spark、storm、python、ElasticSearch、Docker等知识。 ⽬前学习⼤数据渠道主要是通过参加⼤数据培训,因为⼤数据的技术门槛⾼,⼀般通过⾃学来说难度较⼤。 最后再来说下⼤数据开发可以从事哪些⼯作岗位: 1.Hadoop开发⼯程师 2.数据挖掘⼯程师 3.⼤数据科学家 4.⾸席数据官(CDO) 5.ETL研发 6.⼤数据信息架构开发 7.数据仓库研究 8.OLAP开发 9.⼤数据安全研究 这⾥有⼀个半路转⾏做开发实现年薪40W的故事,也许对你有帮助。 毕业后第⼀份⼯作是公司的销售,卖那种app注册量,没错,就是经常在⼤街上有⼈拉着你让你扫⼆维码注册app那种。但是只⼯作了四个 多⽉我就萌⽣了转⾏做开发的想法,原因有两点:⼀是通过在公司⼀段时间的⼯作,我意识到做开发更有技术含量,未来的想象空间更⼤, 公司所有的销售基本就是靠开发的软件⽽⽣;⼆是开发⽐销售更体⾯,不⽤风吹⾬晒花尽⼼思去猜客户的⼼理,简简单单和电脑相处就好。 有了这个想法之后就开始⾏动,因为当时刚毕业,养活⾃⼰是最重要的,所以就边⼯作边业余时间⾃学java编程,但是转⾏的热情极⼤的激 励着我,所以⼏乎每天都坚持学习,即使每天加班到很晚,在那家公司⼯作了 3个⽉后,我觉得我⾃学的可以了,应该可以⼊门了,于是我 辞职了,准备找⼀份开发的⼯作。 现在来看,其实那三四个⽉⾃学的效果完全是⽪⽑,只不过我当时转⾏选对了⼀个⽅向,选择了当初最热门的java开发,那时候市场⼈才本 ⾝就很少,所以,即使我很⽪⽑,但是离职之后也顺利找到了⼀份开发的⼯作。 但是转⾏真的不是那么容易的,因为完全陌⽣的领域,对你的要求是更⾼的,中间经历了⾮常痛苦的过程。任何⼀个⼯作,都是远看容易, 近看复杂。从表⾯上看"别⼈"的⼯作"有趣、赚钱、有发展",等到⼊⾏之后,才发现⾃⼰好像从⼀个深坑跳到另⼀个更深的坑⾥。很多 看似光鲜亮丽的⾏业,背后都有常⼈不能了解的艰⾟。最主要的还是要找到合适的⽅法和遇到对的⼈。 那年才转⾏第五年,我在北京的5环就买了房。如今在北京带着⼀个⼩团队,虽然公司⽐较⼩但是每年可以拿到2成的红利,每当夜深⼈静 的时候,我在想要是⼏年前我做销售,现在的⾃⼰⼜是怎么样的呢? 在你不知道这种转⾏是否是成功的,但是我⼀度认为当初的转⾏可能是我此⽣做的最正确的决定,现在不管是从薪资回报还是幸福指数,都 是转⾏带来的惊喜,所以,我⽃胆从我的⾓度给题主以下⼀些建议: 转⾏要趁早 当你萌⽣要转⾏的想法时,在考虑清楚的前提下,⼀定要趁早,因为你在⼀个⾏业积累的经验越久,你转⾏付出的沉默成本越⼤,你会更没 有勇⽓,我当初之所以这么决绝的确定转⾏本质上也是因为我刚毕业,还是⼀张⽩纸,转⾏对我来说成本还算是很⼩的。 转⾏不⼀定是靠着兴趣 我们知道,如果我们从事的是⾃⼰喜欢、⾃⼰感兴趣的⼯作,那是最幸福的事。 很多⼈转⾏的⽬的可能是因为觉得⾃⼰不喜欢现在这个⾏业,⾃⼰更喜欢 xxxx 之类的,但是我想告诉你们的是,很多时候我们不热爱⾃⼰ 的⼯作,不感兴趣可能只是借⼝,本质原因可能是因为你做的不够好。拿我举例⼦,我决定转⾏做开发的时候根本对开发没什么了解,也根 本不知道⾃⼰是不是真的对编程感兴趣,我就是冲着薪资⼜⾼去的,只不过从事开发了⼀段时间之后,我才觉得我是挺适合编程的。 所以,不要急着给⾃⼰下定论说⾃⼰不喜欢、不适合做 xxxx...先把这件事做好你才有资格说⾃⼰感不感兴趣。 转⾏尽量选择⾼技术含量的⾏业 转⾏分很多种,⽐如有的⼈觉得现在的⼯作很⾟苦,⾃⼰转⾏去做餐厅服务员、外卖员也是⼀种转⾏,这⾥并没有歧视的意思,只是举个例 ⼦,餐厅服务员、外卖员技术
### 回答1: 根据你所提供的信息,假设地球上的新生资源的增长速度是恒定的。那么,当前地球上的资源总量为X,每年增加的资源总量为Y。 如果我们假设每个人每年消耗的资源总量为Z,那么地球上可以支持的最大人口数量为X / Z。如果地球上的人口数量小于这个数目,那么地球上就有足够的资源来支持所有人。 如果每年有a亿人出生,b亿人死亡,那么每年的人口增长率为(a - b) / 10亿。如果我们假设每年出生的每个人会消耗Z1的资源,每年死亡的每个人会释放Z2的资源,那么每年地球上新增的资源总量为Y + a * Z1 - b * Z2。 因此,如果想要保持地球上的资源供应能够跟上人口增长的速度,就需要控制每个人每年消耗的资源总量Z1,以及加强资源回收再利用等方面的努力,以便更有效地利用地球上已有的资源。 此外,还需要关注各种环境问题的解决,例如全球变暖、水资源短缺等等,这些问题也会对地球上的资源供应和人类的生存产生巨大的影响。 ### 回答2: 假设地球上的新生资源按恒定速度增长,可以用一个简单的模型来描述资源的增长与消耗之间的关系。但是,这个模型并没有考虑到人类活动对资源储量的消耗和污染等影响因素。因此,如果要回答地球最多能够养活多少亿人这个问题,我们需要更深入地探讨可持续发展的概念以及人类与环境之间的相互关系。 可持续发展是指满足当前世需求的同时,不破坏未来世满足其需求的能力。因此,可持续发展需要平衡经济、社会、环境三个方面的发展,推动资源利用的最大化和资源减损的最小化。为了实现可持续发展,需要采取一系列措施来保护环境、提高资源利用效率、改善人口结构和生活方式等。 对于地球最多能够养活多少亿人的问题,我们需要考虑到以下几个方面的因素: 一、自然资源的储量 自然资源的储量是支撑人类生存和发展的基础。随着人口的增长和经济的发展,资源需求不断增加,储量消耗的速度也不断加快。因此,首先需要对各种资源的储量进行科学测算和综合考虑,以确定地球最多能够承受的人口规模。 二、人口结构和生活方式 人口的增长对资源需求的影响是复杂的。与人口数量相比,人口结构和生活方式对资源需求的影响更加显著。如果能够通过政策调控,保持人口结构的合理性和适度的生活方式,可将资源需求降低到最低程度,从而延缓资源的消耗速度。 三、资源利用效率 通过技术进步、资源节约和环境保护等手段,提高资源利用效率是实现可持续发展的关键。优化经济结构、改善工业和农业生产方式、鼓励新能源的开发利用等都是提高资源利用效率的有效手段。 四、环境保护措施 环境保护措施是实现可持续发展的重要手段之一。通过减小废弃物的排放、增加污染治理力度、保护生态系统等手段,共同保护地球资源,保证人类生存发展的长期性。 结论:综合考虑以上因素,地球最多能够承受的人口规模应该在70亿左右。但这并不是一个固定的数字,未来的技术、政策和生活方式的变化将进一步影响地球可持续发展的红利。因此,我们需要继续探索新的可持续发展路径,共同守护地球的生态环境。 ### 回答3: 假设地球上的新生资源按恒定速度增长,那么地球上现有的资源和新生资源的总量是有限的。那么,可供人类生活的时间也是有限的,因为资源的消耗速度可能会大于资源的增长速度,这会导致资源枯竭。 根据题目给出的数据,我们可以利用比例来推算地球最多能够养活多少亿人。假设目前地球上的资源可以供x亿人生活a年,我们可以得出每年地球上可以养活的人口为x/a亿人。同理,我们也可以推算出每年地球上可以养活的人口为y/b亿人。 为了能够实现可持续发展,我们需要找到一个平衡点,使得我们能够利用地球资源,同时不会对地球资源产生过度消耗的压力。因此,地球上最多能够养活的人口应该是x/a和y/b中的较小值。 然而,这个答案还仅仅只是一个理论上的估计,如果我们想要在现实生活中保证地球上资源的可持续使用,我们需要采取有效措施来减少资源的浪费和过度消耗。例如,可以推广节约能源的理念,推广环保意识,鼓励科技创新,提高资源利用率等。只有这样,我们才能真正实现可持续发展,避免资源枯竭,为未来的人类留下更好的生活环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值