V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
shawndev
V2EX  ›  程序员

我一直很认同“程序员拼的不是打字速度”,直到我看了这个视频……

  •  
  •   shawndev · 84 天前 · 9589 次点击
    这是一个创建于 84 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://www.youtube.com/watch?v=b0zxIfJJLAY

    油管 Dave's Garage 的视频,原 Windows 系统开发团队的工程师,演示如何通过代码创建一个体积最小的 Windows GUI 程序。

    震撼我的地方有:

    1. 夸张的打字速度
    2. 编写过程完全离线
    3. 只使用了 Nano 文本编辑功能,没有借助任何 IDE 功能(自动补全、语法检查)
    4. 对拥有 12 个参数的方法签名不需要查看文档即可完成调用
    5. 在以上基础上,不间断的引入较好的代码结构和汇编技巧(大部分代码先写调用部分紧接着声明,对寄存器的使用有不少优化)
    6. 一次编译通过
    第 1 条附言  ·  83 天前
    所有回复都看了,谢谢大家的回复。

    首先,如果给大家造成标题党的感觉,我为此深表抱歉。视频和我没有任何利益牵连,我没动机和意愿做这样的事情。

    对于很多人说的,能交给机器做的事情就没必要自己做,我部分认同。在天赋有限的情况下,想要量变需要积累足够的数量。人的身体和意志是不足以支撑 24 小时持续编程的,我深信打字速度快有其意义(当目标不仅仅是将编程作为一项谋生的技能),就像回复中有些网友提到的,如果你打字不够快,像 Bellard 一样涉及那么多领域只是打字速度也会拖累你。

    还有人说提高打字速度是一项投入产出比低的事情,提高思维速度应该优于这件事。就像有人说 Linux 的成功不过是因为更好的开源协议和前期更积极的社区,可是这两件事真的就那么容易吗?为什么同时代的其他人、其他项目没有做到?

    最后,感谢大家提供的视频加速的特征,如果慢放 75%是正常速度的话,我觉得速度还是挺夸张的🤣。我认同的价值观里,不包含“有 288k 粉丝的 tuber 并且卖马克杯,所以 youtube 一定是副业甚至主业,一定提前准备并做了剪辑”的推理逻辑,视频里有讲马克杯的收入完全用于捐献给弱势群体,作者的 HomeLab Tour 也显示了他大概率不缺这点钱度过退休生活。

    标题拟的不够严谨,原本想表示“让我感到五体投地的程序员原来可以这么秀,我和他的差距中最有可能抹平的打字速度,而这个差距大概也让我无法企及”。我没有解决过面向几十亿人不同兼容设备的开发经验,也没有和内核通信并且存活超过 30 年的代码提交,也没有 Bare Metal 离线编程的经验。因为解决问题的难度不同,所以我觉得有机会追赶的可能只有打字速度了,但因为自己不标准的指法事实上连这一点也是无法追赶的。

    最感谢的是大家分享的同样有趣的编程视频,我都一一看完了,为了不刷屏就不跟楼讨论了,以免看起来更像标题党骗流量。闻道有先后,术业有专攻,编程的道固然值得悟,我想打字的术也值得习。

    最最后,立一个小目标,先追赶回复中 397kpm 的朋友。
    81 条回复    2022-12-01 20:13:59 +08:00
    Jooooooooo
        1
    Jooooooooo  
       84 天前   ❤️ 3
    那他有补全和 ide 提示是不是可以干的更快呢?
    shawndev
        2
    shawndev  
    OP
       84 天前
    @Jooooooooo 不考虑 Code Snippet 的话,我觉得应该不会了吧……
    majula
        3
    majula  
       84 天前   ❤️ 3
    按照楼主的说法,那应该更认同“程序员拼的不是打字速度”才对

    打字速度对“不查文档”“不依赖语法检查”“一次编译通过”“较好的代码结构和技巧”并没有帮助

    只有当开发者本来就基础牢固,熟悉技术栈,思路清晰的时候,打字速度才能够对开发效率起到锦上添花的作用
    BiChengfei
        4
    BiChengfei  
       84 天前
    是很厉害,同时感觉尚硅谷这种机构的金牌讲师们,也很厉害
    codingBug
        5
    codingBug  
       84 天前   ❤️ 6
    录视频之前不知道会不会过一遍?我自己是会的,还会后期做些处理
    chenall
        6
    chenall  
       84 天前 via Android
    最早学习是我也是直接记事本开搞,大部分函数参数也是不需要再查文档的。
    编写的起来其实也是挺快的,就是需要记忆的东西比较多。

    这个是习惯的问题。

    现在用了智能 IDE 之后回不去了😃,变懒了。
    shawndev
        7
    shawndev  
    OP
       84 天前   ❤️ 1
    @codingBug 起初我也有一样的想法,直到看到代码中有一处 typo ( Local 拼写为 Loca ),而视频中他主动指出了这一处错误却并没有修改。结合视频前面的介绍,能感觉到几乎是现场直播的效果。
    god7d
        8
    god7d  
       84 天前   ❤️ 1
    人和人之间的差距实在是比人和猪之间的差距还大
    shawndev
        9
    shawndev  
    OP
       84 天前
    @majula 这些里面,1 是广大普通程序员最有可能追赶的,但是量化了一下我们两个的打字速度之后我意识到这几乎是不可能的。(至少对于我而言,指法不标准,很多字母需要手掌大范围移动)
    shawndev
        10
    shawndev  
    OP
       84 天前
    @chenall 我刚开始编程的时候也尝试过,对于包含超过 5 个不同类型参数的函数签名(配合 Objective-C 又臭又长的语法)目前还没有记忆成功的先例,看到 12 个参数能够不参考文档真的震惊了。

    @god7d 坦率地说作为一名程序员我在工作中收获的评价、晋升、加薪我自己是挺满意的。看完这个视频后,我心里重复“我可能不配做一个程序员”足足一个多小时……
    hahadaxigua834
        11
    hahadaxigua834  
       84 天前
    震惊了,真的好快,快的离谱
    chaleaochexist
        12
    chaleaochexist  
       84 天前
    他可能对视频加速了呢...
    inframe
        13
    inframe  
       84 天前
    看这大段 asm 我想起了多年前上汇编课程的日子,还有这本书

    Assembly Language for x86 Processors (7th Edition)
    https://book.douban.com/subject/26616933/
    🙇
    shawndev
        14
    shawndev  
    OP
       84 天前
    @hahadaxigua834 可是也太快了点……感觉他输完一行的时候,IntelliSense 应该都没来得及建议补全

    @chaleaochexist 从输错删除的速度来看,应该是正常速度。
    shawndev
        15
    shawndev  
    OP
       84 天前
    @inframe 海本吗?如果是国内的话,王爽的《汇编语言》也不错,我看过的中文计算机书籍最舒服的一本。
    lambdaq
        16
    lambdaq  
       84 天前
    还是有打错的 17:21

    LocaCursor 应该是 LoadCursor

    感觉打字速度和写代码方式我差不多。不查文档直接硬背,直接啪啪敲键盘。
    hahadaxigua834
        17
    hahadaxigua834  
       84 天前   ❤️ 1
    https://www.livechat.com/typing-speed-test/#/ 试了下自己打字速度,只有 40 wpm...
    lqzhgood
        18
    lqzhgood  
       84 天前
    视频貌似是加速的,光标闪烁的很快
    shawndev
        19
    shawndev  
    OP
       84 天前
    @lambdaq

    是的,注释也有几处拼写错误。对于这么快的打字速度,我觉得已经是不可思议的准确率了。

    @hahadaxigua834

    和你差不多 Awesome! You type with the speed of 60 WPM (258 CPM). Your accuracy was 98%. Congratulations!
    coderluan
        20
    coderluan  
       84 天前
    有点标题党, 直接说分享个牛逼的编程视频就可以了。起这么个标题,楼主你之后会去按这个去准备面试吗...
    Qy2FbR
        21
    Qy2FbR  
       84 天前 via Android
    。。。。得出的结论竟然是程序员拼的是打字速度而不是对语言 /系统的熟悉度。。。
    shawndev
        22
    shawndev  
    OP
       84 天前
    @lqzhgood 仔细看了下光标闪烁频率却是不大一样

    @coderluan 会按视频中激励自己

    @Qy2FbR 知道自己几斤几两,挑觉得最有可能的方面努力
    Timzzzzz
        23
    Timzzzzz  
       84 天前 via Android
    视频明显加速了吧
    wu67
        24
    wu67  
       84 天前
    我只想说. 我只是把代码当作谋生工具, 只有放假时才会偶尔当成兴趣来玩. 所以没必要那么拼, 因为我知道, 可能给我加氮气都追不上那些走在代码届潮流尖端的大佬.
    ClericPy
        25
    ClericPy  
       84 天前   ❤️ 1
    那些说打字速度不重要的... 可能真很难想象世界上真的有很多百万千万行代码量的大佬, 打字早都已经成肌肉记忆了

    视频里打字时候突然加速有点想输入法的补全功能, 以前看老外聊天打字靠输入法比汉字快多了. 不过似乎也像是加速了

    这些年越写越感觉自己差得远
    Coelacanth
        26
    Coelacanth  
       84 天前   ❤️ 3

    YouTube 上 Bisqwit 的编程视频,看他编程是一种享受。

    用的是一个很小众的自己定制过的 IDE ,之前的主业印象里是开卡车的……
    sidkang
        27
    sidkang  
       84 天前
    相比较优先级来说,我倒是希望自己的打字速度跟不上我的思维,😂
    GP1
        28
    GP1  
       84 天前
    因为他叠了一堆 buff:
    母语加成,天生自带加速。
    多年经验,敲代码和吃饭喝水一样简单。
    肌肉记忆,熟练度加成 up up ↑

    你比的了吗?跪下大喊 666 就完事了~
    shawndev
        29
    shawndev  
    OP
       84 天前
    @Coelacanth

    你这么一说我想起来之前 GitHub 上遇到的一个神人。技术专家 - 创业 - GOV 高级顾问 - 大学教授 - 技术专家。

    BTW 视频的 BGM 有点酷
    blankmiss
        30
    blankmiss  
       84 天前
    0.75 倍 就感觉很正常 视频可能被加速了
    joynvda
        31
    joynvda  
       84 天前   ❤️ 1
    键盘输入应该是剪接加快播放的吧。
    likunyan
        32
    likunyan  
       84 天前   ❤️ 11
    每一个行业,从来就没有好走的路,好赚的钱。

    唯一的捷径,就是踏踏实实地把自己变专业。

    只有在变专业的过程中,才有机会辨识优秀的人,和自己的差距。

    在这方面,古人早就把人的职业进阶分成了七层:奴、徒、工、匠、家、师、圣。

    并做了如下解释:

    奴: 非自愿和靠人监督的人
    徒: 能力不足,肯自愿学习的人
    工: 老老实实,按规矩做事的人
    匠: 精通一门技艺或手艺的人
    师: 掌握了规律,又能将其传授给他人的人
    家: 有固定的信念,让别人生活得更好的人
    圣: 精通事理,通达万物的人
    SuperMild
        33
    SuperMild  
       84 天前   ❤️ 9
    看可以这样想,“打字速度不重要” 的前提是,大部分人的普通打字速度,甚至缓慢打字速度,都比自己的思维速度快(编程时)。

    也就是说,大部分人的瓶颈是思维速度。

    如果一个人在编程时脑子极快,那么自然就需要提高打字速度去匹配。

    结论:

    1. 对于大多数普通人来说,“程序员拼的不是打字速度” 这个说法还是正确的
    2. 如果受到激励,应该先努力提高思维速度,而不是打字速度
    shadeofgod
        34
    shadeofgod  
       84 天前
    他那个分号是怎么和上一行的分号对齐的,前面的内容都是不等长的,我只会一个个空格敲让它对齐。。。
    maketime4life
        35
    maketime4life  
       84 天前
    作者 50 多了,我 50 多的时候不知道还在不在这行🐶
    512357301
        36
    512357301  
       84 天前 via Android
    1. 普通人编程日常的手速配合智能识别,完全够用。
    2. 敲代码不是速录,拼的是脑子的速度,不拼手速,真到了拼手速的时候,那代码就太廉价了。
    3. 没看视频,不过如果是长期教学的人,打教学代码确实会很快的,毕竟熟能生巧。
    allpass
        37
    allpass  
       84 天前
    一看就是加速的呀,
    你看光标闪的速度和删除字符的速度。
    CRVV
        38
    CRVV  
       84 天前 via Android
    这是一个有 288k 订阅的 youtuber ,中间还在卖杯子。这种的,做 youtuber 可能是他的主业,至少也是个副业。

    那么,他要做一个片子用汇编写一个小程序,他也不想直接把代码列出来然后一行一行讲,这样没有看着他一行一行写出来的感觉。所以,你看到的 youtube 成品,一定是这样很快速度被敲出来的代码,否则他的片子不好看,就不会获得 288k 的订阅。

    当然,我不知道他到底能不能做到 op 说的 1-6 ,也许真的可以,但和这个片子的内容不相关。
    superrichman
        39
    superrichman  
       84 天前   ❤️ 9
    这个是视频, 加速了的, 提前录好的, 然后配合视频念稿子, 他在看提词器.
    真实的速度你看他直播的录屏就知道了
    就是普通的打字速度.
    ryd994
        40
    ryd994  
       84 天前 via Android
    对于高级程序员,不仅打字速度不重要,写码速度也没那么重要。高级程序员大部分时间都在开会、写文档、设计程序上。重点是让别人出活而不是自己出活,只管自己出活,senior 也就到头了。
    有工具就要用,能用好工具也是一种能力。何必纠结茴字有几种写法?

    我亲眼所见,某微软大佬,设计 ndis 的,打字是二指流
    x02
        41
    x02  
       84 天前   ❤️ 1
    这段代码他已经演示无数遍了, 实际开发的人员每天面对的问题都不一样, 工具都不一样, api 都在变化, 人怎么记得住?

    我让你天天写一样的代码, 你用记事本也可以.
    nexo
        42
    nexo  
       84 天前
    298cpm 正常速度 但是需要查文档查半天、debug n 天
    mxalbert1996
        43
    mxalbert1996  
       84 天前 via Android
    写代码时的录屏明显是加速过的,你看光标闪烁的速度就知道。你可以对比一下一开始在终端里敲命令时的速度。
    autoxbc
        44
    autoxbc  
       84 天前
    这个业界有调查,大厂程序员一天的有效输出就是 100 行,要是所谓拼打字速度,10 分钟就下班了
    https://zhuanlan.zhihu.com/p/43707369
    hsfzxjy
        45
    hsfzxjy  
       84 天前 via Android
    没看视频,12 个参数盲猜是 CreateWindowEx🤣,这个函数看了一次就忘不了
    snw
        46
    snw  
       84 天前
    打字有人能这么快我信,但输入错误率这么高还能这么快我不信。

    提高英文打字速度的几个过程:
    * 学会盲打——可以提升到“不慢”
    * 固定指法键位——可以提升到“较快”
    * 降低错误率——可以提升到“快”
    * 以单词为单位形成肌肉记忆——可以提升到“飞快”
    * 速录 /语音识别
    number
        47
    number  
       84 天前 via Android
    说话语速也相当快
    QHKZ
        48
    QHKZ  
       84 天前   ❤️ 1
    这位的打字速度也是相当快了
    ClarkAbe
        49
    ClarkAbe  
       84 天前
    槽点不应该是 Windows 开发工程师用 GNU Nano 写代码嘛.......
    ranleng
        50
    ranleng  
       84 天前
    @hahadaxigua834 71 wpm ,第二遍 75, 就是靠肌肉记忆.... 手在打当前单词,眼睛看下一个
    cp19890714
        51
    cp19890714  
       84 天前
    意义是什么?
    成本与收益分别是多少级?
    Quarter
        52
    Quarter  
       84 天前 via Android
    打字确实飞快,语速也挺快的
    Huelse
        53
    Huelse  
       84 天前
    这就是母语优势啊
    hsuyeung
        54
    hsuyeung  
       84 天前 via iPhone
    视频里的键盘声音很好听,不知道有没有大佬知道是什么轴的
    Torpedo
        55
    Torpedo  
       84 天前
    我感觉 2 是最夸张的,也是不同程序员水平差距最大的地方
    realpg
        56
    realpg  
       84 天前   ❤️ 1
    @Jooooooooo #1

    并不会,补全还不如自己打得快,思路连贯打字快错误少比 IDE 那些弱鸡提示啥的快多了

    V2 根本没有几个打字快的,根本不知道打字快编码是什么感觉

    我现在经常是键盘跟不上我的脑袋和手的反应速度

    随便打打发个图


    百度搜 打字测试 第一个 时间少就 1 分钟了 这个英文下有标点有大小写最适合直观测试
    realpg
        57
    realpg  
       84 天前
    另外,不要搞什么机械键盘静电容键盘了,那些东西除了贵和心理暗示没啥实际作用。

    我打字就一把 80 块钱罗技无线键鼠套装带的薄膜键盘,还有 dell 官方自带丐版有线薄膜键盘,这两个是最舒服的。薄膜如果被污染老化就扔了换新,这个不能忍。

    机械什么的,很多游戏有点用,对于输入场景妥妥的负优化,无论什么轴,都是负优化。静电容什么的就更不适合高强度输入了。菜鸡才天天折腾装备
    realpg
        58
    realpg  
       84 天前   ❤️ 1
    打字熟练度高 对于常用词组固定组合,比如我的登录密码是 24 位纯英文单词拼接还带空格带句号,基本输入速度都起飞

    对于编码常用的 function 啊 protected 啊 还有常用的带空格的多个词组,都是不需要过脑子的,输入速度远大于 600kpm

    ide 补全速度你还得按两下 tab 或者按快捷键,你按一下快捷键,未必有我完整输入这个带空格带括号的句子快 而且思路连贯直接到下一行

    ide 更多的功能是缩进,回车自动格式化之类的,用 nano 写代码什么的还是算了,vscode 足够

    所以,打字速度问题上,很多人都是没站到那个位置,或者能力有限站不到那个位置,就开始 YY 站那么高有个 J8 用,典型的吃不到葡萄说葡萄酸。在我看来,你说什么什么没用,你至少应该能做到才有资格评价
    oeagut
        59
    oeagut  
       84 天前
    其实,我想问问,他用的键盘是什么轴的,听着声音好爽啊~~
    learningman
        60
    learningman  
       83 天前 via Android
    建议看 tourist 做题
    weizhen199
        61
    weizhen199  
       83 天前
    我的一个老师也这样,虽然没这么快。
    (然而每次打完总要会 error 然后去找自己哪里打错了
    sl0000
        62
    sl0000  
       83 天前
    独孤打字三法
    1. 先把键位倒着背一遍;
    2. 再把手指甲剪掉;
    3. 每个手指挂一瓶哇哈哈练习抬手指;
    gowk
        63
    gowk  
       83 天前
    @Coelacanth #26
    开卡车……
    lymith
        64
    lymith  
       83 天前
    不需要思考的地方,写程序打字基本和飞一样
    fuxkcsdn
        65
    fuxkcsdn  
       83 天前
    即使 java 也习惯用 vim 编程
    其实用 vim 编程速度还挺快的,毕竟真的开始编码的时候都是已经在脑海里构思过好几次了,无非就是把代码具现化
    哪里该用啥函数都已经考虑并实验过了

    我用 vim 编码基本上一次编译过,大部分需要调试的反而是业务逻辑

    P.S. 像 OP 说的 12 个参数不看参数提示一次输入,那是做不到,不过如果是经常用的函数也不是不可能,毕竟有 12 个参数,应该是有规律的,比如 x1,x2,y1,y2,z1,z2,...
    FACEB00K
        66
    FACEB00K  
       83 天前
    @learningman 确实,我第一次看他们三个的视频也很震惊🤯🤯
    xboxv
        67
    xboxv  
       83 天前
    感觉像是加速了,不然视频太长很枯燥吧。
    还有就是母语是英语的打字自然快很多,键盘熟悉程度,字符空格,单词拼写这些都是会很熟
    lamesbond
        68
    lamesbond  
       83 天前
    程序员拼的不是智商,身体?
    Daiwf
        69
    Daiwf  
       83 天前
    这和打字速度有啥关系。。
    cs419
        70
    cs419  
       83 天前
    标题党、钓鱼贴?
    没感觉打字速度对程序员有什么特别的意义

    代码的质量 和打字的快慢 没有关系
    敲代码 一般人的打字速度就够用了

    急速的意义在哪
    007 特工要在有限的时间解除导弹发射么
    wuhao
        71
    wuhao  
       83 天前
    @god7d 那倒不会
    ihciah
        72
    ihciah  
       83 天前 via iPhone
    所有能快速查找到的东西没必要占用脑容量,如果常用到记下来的投入产出比更高,那么在多次查找后自然就记住了。
    是个自然而然的过程,觉得没必要刻意追求。IDE 、编译器检查这种能提高程序员 IO 效率的工具是个好文明。
    pkwenda
        73
    pkwenda  
       83 天前
    这。。。这绝对是加速了,有一处 cace of 改成 case of 这个动作简直是光速,光标闪的也很快。
    shawndev
        74
    shawndev  
    OP
       83 天前 via iPhone
    @hsfzxjy 牛!是这个没错,不过汇编语言一边想 calling convention ,一边回想 12 个参数分别是什么,一边想输到了第几个参数(没有代码提示)感觉还是很夸张啊😂
    shm7
        75
    shm7  
       83 天前 via iPhone
    他的内存比一般人大…
    zmqking
        76
    zmqking  
       83 天前 via iPhone
    我一直认为英语为母语的国家是不是写起代码像写文章一样的,比起我们优势是很明显的!
    cominghome
        77
    cominghome  
       83 天前
    你觉得你和他的差距仅仅在于打字速度吗?
    mlxy123123
        78
    mlxy123123  
       83 天前
    程序员拼的不是打字速度 ✅
    程序员不需要打字速度 ❎
    提高打字速度对编程没有帮助 ❎
    我打字慢我骄傲 ❎
    ericlgq2
        79
    ericlgq2  
       82 天前 via Android
    自从用了智能手机,能背下来的电话号码只剩下了一个。用了 IDE 之后,函数签名也记不住了。。。
    henryfu88
        80
    henryfu88  
       82 天前
    @realpg 请问 80 块钱罗技无线键鼠套装是啥型号?我现在用的是罗技 MK240 键鼠套装,很一般啊,不怎么好用啊。
    Kobayashi
        81
    Kobayashi  
       58 天前 via Android
    这明显是后期剪辑加速。能达到下面这个视频的速度就够恐怖了,人手指不可能达到那么快。https://b23.tv/9iryFgt
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   2886 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 49ms · UTC 06:54 · PVG 14:54 · LAX 22:54 · JFK 01:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.