欢迎光临散文网 会员登陆 & 注册

[oeasy]python0007-Guido的简历

2022-10-15 10:27 作者:oeasy  | 我要投稿


Guido的简历 🥊

回忆上次内容

  • 计算机本身的特性决定

  • 计算机保存传递的是电子

  • 而不是原子

  • 这就使得存储和分发的成本几乎为零

  • 在这样的物理基础上

  • 出现了自由软件运动

  • 从rms提出的free software 开始

  • 到gnu研发的各种软件

  • 自由软件运动之后出现了开源运动

  • 提倡把源代码开放

  • 也被大量的商业公司所跟随

  • python其实是

  • 一个典型的开源项目

  • 自由软件标志性的语言

  • 是谁制作出了python这个语言呢?

Guido

  • 荷兰人Guido 最早开发的 python

  • 那个时候还没有github

  • 当时 Guido 怎么就想到要创造一个 python 呢?

缘起

  • 最早 Guido 曾经在 CWI 工作

  • CWI是荷兰的数学与计算机科学国家研究所

  • 这个研究所在研究一种语言

  • 能够像C语言那样

  • 全面调用计算机的功能接口

  • 又能像shell那样

  • 轻松的编程

  • 这个语言叫做ABC

  • 当时 Guido 在 CWI 参与到 ABC语言 的开发

  • 他将自己所知的一切语言设计知识都倾注在这个项目上

  • 尽管已经具备了良好的可读性和易用性

  • Guido白天做abc

  • 晚上做自己的python

  • 但ABC语言最终还是没有流行起来

  • 后来Guido去哪里了呢?

cnri

  • 荷兰的国家研究中心

  • Guido吸取了ABC的教训

  • 开始了自己的 python语言

  • 95 年开源运动还在兴起的过程中

  • 研究python项目的经费是 cnri 出的

  • 按理说这python应该算是cnri的

发展

  • Guido 想把他做成开源的

  • 但是没有立场

  • 毕竟 cnri 花了钱

  • python 从开始

  • 就是属于Guido的

  • 最开始在 cwi 工作写abc

  • 下班摸鱼 改的 python 的 bug

  • 到了 cnri

  • 继续做这个

  • 甚至让 cnri 出研究python项目的经费

  • 从python的Owner上面

  • 其实可以看到Guido的工作轨迹

  • 那这个python到底属于谁呢?

Guido 的考量

  • 在 python 的 license 里面提到了 cwi 和 cnri

  • 当时 python 的主要成员开始讨论

  • python 应该继续免费开源还是商业

  • Guido 认为如果商业化

  • python 的用户就会离开

  • 最终选择开源

  • 贡献者和社区也是在开源的基础上发展起来的

  • 但商业是世界运行的底层逻辑

  • 强大的商业资本方会有律师、媒体

  • python 离开商业也会举步维艰

  • 这曾让 Guido 很苦恼

转机

  • 开源运动的爆发给了他启发

  • 他开始选择 gpl 协议来发布python源代码

  • gpl 后续必须也得开源

  • 后来互联网兴起

  • 其中一个网站BeOpen.com

  • BeOpen 想做的是开源门户

  • 用的技术是 开源的python

  • BeOpen 想要帮 Guido 发展python

  • 就想给他一份工作

  • 工作内容就是完善 python

  • 这正是 Guido 所需要的!!!

  • Guido 带着 3 个 CNRI 的同事一起去了

  • 这时候 CNRI 的管理层慌了

  • 他们觉得 Guido 疯了

  • BeOpen 是个创业公司

  • 找 Guido 谈话

  • 威胁他去了就别想再回来

  • 但是不可阻止了

  • Guido走了

  • CNRI 的 python 项目

  • 自然也跟着走了

  • Guido 在哪

  • python 项目就在哪

  • 不过去BeOpen.com 的 2000 年

  • 正好是互联网泡沫兴起的时候

  • 有兴起就有衰落

  • BeOpen也在苦苦支撑中

  • 这时候Guido又该何去何从呢?

后来

  • 他从BeOpen.com 之后

  • Guido 很担心 python 源代码的所有权问题

  • 后来 Guido 去了 soap 公司

  • 在那里他咨询了律师

  • 并建立了 python 基金会

  • psf

  • 明确了 python 的协议和所属问题

  • 开源运动已经慢慢发展起来了

  • Guido开始接收到各种邀约

Google

  • 后来他去google面试的时候

  • 简历非常简单

  • I wrote python

  • 后几轮面试的时候

  • 面试官开始反应过来

  • 这是python之父Guido

  • 2005年

  • 加入 google

  • 2012年

  • 加入 dropbox

  • 当时dropbox只有 150 人

  • 玩起了云存储

  • 2020年 去了微软

  • 微软号称拥抱开源

  • 要帮Guido提高python性能3-5倍

  • 目前Guido还在微软

  • 这就是Guido和python的历史

  • 在商业的世界里

  • Guido 走出了属于自己的道路

  • 从无到有

  • 让我们用 python

  • 为 Guido 写一个简历吧

准备oeasy.py

  • 我们先恢复原来的oeasy.py

  • oeasy.py 已经写好了

  • 保存并关闭oeasy.py

guido.py

#用vi打开并编辑guido.py
vi guido.py

  • 上一步的oeasy.py中输出了两行内容:

  • hello

  • oeasy

  • 这一步我们把这两行读取到guido.py

  • :r oeasy.py

  • 读取上次的文件进入当前缓存

整理代码

  • gg

  • 将光标移动回到最开头

  • dd

  • 删除(delete)光标所在行

  • 最开头的一行(gg

复制代码

  • 先按一下y

  • 观察下图红框位置

  • 再按一下G

  • 完整命令是yG

  • 复制的是

  • 从当前位置(最开头gg

  • 到最后一行(G)的内容

  • 这里复制了两行

  • 这两行被复制(yank)进了默认寄存器

  • 然后准备粘贴

粘贴

  • 2P (注意此处是大写P)

  • 在当前位置上方粘贴(paste) 2 次

  • 多出来4行...

  • 可以想见9999p

  • 这次剪切板里面有两行代码

  • 这一粘贴出来就可以有2*9999行代码了

  • 还记得上次万行代码的圆梦之旅吗?

  • 😏

回忆...

  • 万行代码不是梦

  • 9999p

查看神迹

  • G

  • 这次仍然仿佛是真的发生过的梦一般

  • 上次1万

  • 这次2万

  • 翻了一番

  • 截图纪念!!

梦醒时分😄

  • 圆梦了之后

  • 感觉有点空虚

  • 梦还是要醒的

  • u回来

  • u是undo撤销

  • 按一下u相当于撤销一步

  • 撤销多了可以ctrl+r

  • redo 重做

回到最初

  • 又回到最初6行的样子

  • 梦醒之后🌛

  • 进行我们的修改

自行修改

  • i

  • 重新切换到插入模式为输出添加年份标号

  • 底行显示目前状态为插入模式

  • 最终把guido.py编辑成如下的样子

print("1982------Guido in cwi")
print("1995------Guido in cnri")
print("2000------Guido in beopen")
print("2005------Guido in google")
print("2012------Guido in dropbox")
print("2020------Guido in microsoft")

执行

  • esc

  • 退回到正常模式

  • esc退出插入模式

  • 准备底行命令模式运行当前py文件

保存执行

  • :w|!python3 %

  • 保存并用 python3 解释当前程序(%)

  • 可以看到输出了标了号的 6 行

  • 这 6 行的顺序就是按照我们标号的顺序 来的

顺序执行

  • 这个过程叫做顺序执行

  • 按照次序顺着执行的

顺序播放

  • 就像我们听语音是挨排听的

  • 这个过程叫顺序播放

  • 按照次序顺着执行的

音符顺序

  • 演奏音符也是一个个按照顺序演奏,才是这首歌曲

  • 调换一下次序,就乱了,不是这个歌了

  • 不过其实也是一种思路。。。🤪

  • 这个过程叫顺序演奏

  • 按照次序顺着演奏的

按部就班

  • 我们的生活也是按照线性的时间线顺序完成的

学习

  • 学习也一样

  • 要按照时间的次第

  • 一步一步来

  • 细水长流

  • 这个编程也像流水一样

  • 从头流到尾

  • 所以程序也叫流程

总结

  • py 的程序是按照顺序执行的

  • 是一行行挨排解释执行的

  • 程序并不是数量越多越好

  • kpi也在不断演化

  • 写的代码越多

  • 出现的bug就越多

  • 什么是bug

  • 如何找bug呢?

  • 我们下次再说!👋

蓝桥->https://www.lanqiao.cn/teacher/workbench/courses/3584github->https://github.com/overmind1980/oeasy-python-tutorialgitee->https://gitee.com/overmind1980/oeasypython 作者:oeasy



[oeasy]python0007-Guido的简历的评论 (共 条)

分享到微博请遵守国家法律